smart_message 0.0.12 → 0.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/CHANGELOG.md +155 -1
- data/Gemfile.lock +6 -6
- data/README.md +71 -25
- data/docs/core-concepts/architecture.md +5 -10
- data/docs/getting-started/examples.md +0 -12
- data/docs/getting-started/quick-start.md +4 -9
- data/docs/index.md +6 -4
- data/docs/reference/serializers.md +160 -488
- data/docs/reference/transports.md +47 -146
- data/docs/transports/memory-transport.md +2 -1
- data/docs/transports/multi-transport.md +484 -0
- data/docs/transports/redis-transport-comparison.md +215 -350
- data/docs/transports/redis-transport.md +3 -22
- data/examples/README.md +6 -9
- data/examples/city_scenario/README.md +1 -1
- data/examples/city_scenario/messages/emergency_911_message.rb +0 -1
- data/examples/city_scenario/messages/emergency_resolved_message.rb +0 -1
- data/examples/city_scenario/messages/fire_dispatch_message.rb +0 -1
- data/examples/city_scenario/messages/fire_emergency_message.rb +0 -1
- data/examples/city_scenario/messages/health_check_message.rb +0 -1
- data/examples/city_scenario/messages/health_status_message.rb +0 -1
- data/examples/city_scenario/messages/police_dispatch_message.rb +0 -1
- data/examples/city_scenario/messages/silent_alarm_message.rb +0 -1
- data/examples/file/00_run_all_file_demos.rb +260 -0
- data/examples/file/01_basic_file_transport_demo.rb +237 -0
- data/examples/file/02_fifo_transport_demo.rb +289 -0
- data/examples/file/03_file_watching_demo.rb +332 -0
- data/examples/file/04_multi_transport_file_demo.rb +432 -0
- data/examples/file/README.md +257 -0
- data/examples/memory/00_run_all_demos.rb +317 -0
- data/examples/memory/01_message_deduplication_demo.rb +18 -32
- data/examples/memory/02_dead_letter_queue_demo.rb +9 -12
- data/examples/memory/03_point_to_point_orders.rb +3 -5
- data/examples/memory/04_publish_subscribe_events.rb +15 -16
- data/examples/memory/05_many_to_many_chat.rb +19 -22
- data/examples/memory/06_stdout_publish_only.rb +145 -0
- data/examples/memory/07_proc_handlers_demo.rb +13 -14
- data/examples/memory/08_custom_logger_demo.rb +136 -140
- data/examples/memory/09_error_handling_demo.rb +7 -10
- data/examples/memory/10_entity_addressing_basic.rb +25 -31
- data/examples/memory/11_entity_addressing_with_filtering.rb +32 -36
- data/examples/memory/12_regex_filtering_microservices.rb +10 -11
- data/examples/memory/13_header_block_configuration.rb +0 -5
- data/examples/memory/14_global_configuration_demo.rb +12 -14
- data/examples/memory/15_logger_demo.rb +0 -1
- data/examples/memory/README.md +37 -20
- data/examples/memory/log/demo_app.log.1 +100 -0
- data/examples/memory/log/demo_app.log.2 +100 -0
- data/examples/multi_transport_example.rb +114 -0
- data/examples/redis/01_smart_home_iot_demo.rb +20 -24
- data/examples/redis/README.md +0 -2
- data/examples/utilities/box_it.rb +12 -0
- data/examples/utilities/doing.rb +19 -0
- data/examples/utilities/temp.md +28 -0
- data/lib/smart_message/base.rb +24 -17
- data/lib/smart_message/configuration.rb +2 -23
- data/lib/smart_message/dead_letter_queue.rb +1 -1
- data/lib/smart_message/errors.rb +3 -0
- data/lib/smart_message/header.rb +1 -1
- data/lib/smart_message/logger/default.rb +1 -1
- data/lib/smart_message/messaging.rb +37 -66
- data/lib/smart_message/plugins.rb +42 -41
- data/lib/smart_message/serializer/base.rb +1 -1
- data/lib/smart_message/serializer.rb +3 -2
- data/lib/smart_message/subscription.rb +18 -20
- data/lib/smart_message/transport/async_publish_queue.rb +284 -0
- data/lib/smart_message/transport/base.rb +42 -8
- data/lib/smart_message/transport/fifo_operations.rb +264 -0
- data/lib/smart_message/transport/file_operations.rb +200 -0
- data/lib/smart_message/transport/file_transport.rb +149 -0
- data/lib/smart_message/transport/file_watching.rb +72 -0
- data/lib/smart_message/transport/memory_transport.rb +23 -4
- data/lib/smart_message/transport/partitioned_files.rb +46 -0
- data/lib/smart_message/transport/redis_transport.rb +11 -0
- data/lib/smart_message/transport/registry.rb +0 -1
- data/lib/smart_message/transport/stdout_transport.rb +73 -41
- data/lib/smart_message/transport/stdout_transport.rb.backup +88 -0
- data/lib/smart_message/transport.rb +0 -1
- data/lib/smart_message/version.rb +1 -1
- metadata +25 -37
- data/docs/guides/redis-queue-getting-started.md +0 -697
- data/docs/guides/redis-queue-patterns.md +0 -889
- data/docs/guides/redis-queue-production.md +0 -1091
- data/docs/transports/redis-enhanced-transport.md +0 -524
- data/docs/transports/redis-queue-transport.md +0 -1304
- data/examples/redis_enhanced/README.md +0 -319
- data/examples/redis_enhanced/enhanced_01_basic_patterns.rb +0 -233
- data/examples/redis_enhanced/enhanced_02_fluent_api.rb +0 -331
- data/examples/redis_enhanced/enhanced_03_dual_publishing.rb +0 -281
- data/examples/redis_enhanced/enhanced_04_advanced_routing.rb +0 -419
- data/examples/redis_queue/01_basic_messaging.rb +0 -221
- data/examples/redis_queue/01_comprehensive_examples.rb +0 -508
- data/examples/redis_queue/02_pattern_routing.rb +0 -405
- data/examples/redis_queue/03_fluent_api.rb +0 -422
- data/examples/redis_queue/04_load_balancing.rb +0 -486
- data/examples/redis_queue/05_microservices.rb +0 -735
- data/examples/redis_queue/06_emergency_alerts.rb +0 -777
- data/examples/redis_queue/07_queue_management.rb +0 -587
- data/examples/redis_queue/README.md +0 -366
- data/examples/redis_queue/enhanced_01_basic_patterns.rb +0 -233
- data/examples/redis_queue/enhanced_02_fluent_api.rb +0 -331
- data/examples/redis_queue/enhanced_03_dual_publishing.rb +0 -281
- data/examples/redis_queue/enhanced_04_advanced_routing.rb +0 -419
- data/examples/redis_queue/redis_queue_architecture.svg +0 -148
- data/ideas/README.md +0 -41
- data/ideas/agents.md +0 -1001
- data/ideas/database_transport.md +0 -980
- data/ideas/improvement.md +0 -359
- data/ideas/meshage.md +0 -1788
- data/ideas/message_discovery.md +0 -178
- data/ideas/message_schema.md +0 -1381
- data/lib/smart_message/transport/redis_enhanced_transport.rb +0 -399
- data/lib/smart_message/transport/redis_queue_transport.rb +0 -555
- data/lib/smart_message/wrapper.rb.bak +0 -132
- /data/examples/memory/{06_pretty_print_demo.rb → 16_pretty_print_demo.rb} +0 -0
@@ -0,0 +1,100 @@
|
|
1
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 1 - generating content to trigger file rolling when size limit is reached [message:Log entry 1 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
2
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 1 [entry_number:1] [batch:demo] [message:Debug entry 1] [source:15_logger_demo.rb:93]
|
3
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 2 - generating content to trigger file rolling when size limit is reached [message:Log entry 2 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
4
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 2 [entry_number:2] [batch:demo] [message:Debug entry 2] [source:15_logger_demo.rb:93]
|
5
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 3 - generating content to trigger file rolling when size limit is reached [message:Log entry 3 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
6
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 3 [entry_number:3] [batch:demo] [message:Debug entry 3] [source:15_logger_demo.rb:93]
|
7
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 4 - generating content to trigger file rolling when size limit is reached [message:Log entry 4 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
8
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 4 [entry_number:4] [batch:demo] [message:Debug entry 4] [source:15_logger_demo.rb:93]
|
9
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 5 - generating content to trigger file rolling when size limit is reached [message:Log entry 5 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
10
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 5 [entry_number:5] [batch:demo] [message:Debug entry 5] [source:15_logger_demo.rb:93]
|
11
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 6 - generating content to trigger file rolling when size limit is reached [message:Log entry 6 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
12
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 6 [entry_number:6] [batch:demo] [message:Debug entry 6] [source:15_logger_demo.rb:93]
|
13
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 7 - generating content to trigger file rolling when size limit is reached [message:Log entry 7 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
14
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 7 [entry_number:7] [batch:demo] [message:Debug entry 7] [source:15_logger_demo.rb:93]
|
15
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 8 - generating content to trigger file rolling when size limit is reached [message:Log entry 8 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
16
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 8 [entry_number:8] [batch:demo] [message:Debug entry 8] [source:15_logger_demo.rb:93]
|
17
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 9 - generating content to trigger file rolling when size limit is reached [message:Log entry 9 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
18
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 9 [entry_number:9] [batch:demo] [message:Debug entry 9] [source:15_logger_demo.rb:93]
|
19
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 10 - generating content to trigger file rolling when size limit is reached [message:Log entry 10 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
20
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 10 [entry_number:10] [batch:demo] [message:Debug entry 10] [source:15_logger_demo.rb:93]
|
21
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 11 - generating content to trigger file rolling when size limit is reached [message:Log entry 11 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
22
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 11 [entry_number:11] [batch:demo] [message:Debug entry 11] [source:15_logger_demo.rb:93]
|
23
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 12 - generating content to trigger file rolling when size limit is reached [message:Log entry 12 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
24
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 12 [entry_number:12] [batch:demo] [message:Debug entry 12] [source:15_logger_demo.rb:93]
|
25
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 13 - generating content to trigger file rolling when size limit is reached [message:Log entry 13 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
26
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 13 [entry_number:13] [batch:demo] [message:Debug entry 13] [source:15_logger_demo.rb:93]
|
27
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 14 - generating content to trigger file rolling when size limit is reached [message:Log entry 14 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
28
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 14 [entry_number:14] [batch:demo] [message:Debug entry 14] [source:15_logger_demo.rb:93]
|
29
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 15 - generating content to trigger file rolling when size limit is reached [message:Log entry 15 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
30
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 15 [entry_number:15] [batch:demo] [message:Debug entry 15] [source:15_logger_demo.rb:93]
|
31
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 16 - generating content to trigger file rolling when size limit is reached [message:Log entry 16 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
32
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 16 [entry_number:16] [batch:demo] [message:Debug entry 16] [source:15_logger_demo.rb:93]
|
33
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 17 - generating content to trigger file rolling when size limit is reached [message:Log entry 17 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
34
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 17 [entry_number:17] [batch:demo] [message:Debug entry 17] [source:15_logger_demo.rb:93]
|
35
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 18 - generating content to trigger file rolling when size limit is reached [message:Log entry 18 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
36
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 18 [entry_number:18] [batch:demo] [message:Debug entry 18] [source:15_logger_demo.rb:93]
|
37
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 19 - generating content to trigger file rolling when size limit is reached [message:Log entry 19 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
38
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 19 [entry_number:19] [batch:demo] [message:Debug entry 19] [source:15_logger_demo.rb:93]
|
39
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 20 - generating content to trigger file rolling when size limit is reached [message:Log entry 20 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
40
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 20 [entry_number:20] [batch:demo] [message:Debug entry 20] [source:15_logger_demo.rb:93]
|
41
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 21 - generating content to trigger file rolling when size limit is reached [message:Log entry 21 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
42
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 21 [entry_number:21] [batch:demo] [message:Debug entry 21] [source:15_logger_demo.rb:93]
|
43
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 22 - generating content to trigger file rolling when size limit is reached [message:Log entry 22 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
44
|
+
[2025-09-10T09:53:01.164 DEBUG (19258) #] Debug entry 22 [entry_number:22] [batch:demo] [message:Debug entry 22] [source:15_logger_demo.rb:93]
|
45
|
+
[2025-09-10T09:53:01.164 INFO (19258) #] Log entry 23 - generating content to trigger file rolling when size limit is reached [message:Log entry 23 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
46
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 23 [entry_number:23] [batch:demo] [message:Debug entry 23] [source:15_logger_demo.rb:93]
|
47
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 24 - generating content to trigger file rolling when size limit is reached [message:Log entry 24 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
48
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 24 [entry_number:24] [batch:demo] [message:Debug entry 24] [source:15_logger_demo.rb:93]
|
49
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 25 - generating content to trigger file rolling when size limit is reached [message:Log entry 25 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
50
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 25 [entry_number:25] [batch:demo] [message:Debug entry 25] [source:15_logger_demo.rb:93]
|
51
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 26 - generating content to trigger file rolling when size limit is reached [message:Log entry 26 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
52
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 26 [entry_number:26] [batch:demo] [message:Debug entry 26] [source:15_logger_demo.rb:93]
|
53
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 27 - generating content to trigger file rolling when size limit is reached [message:Log entry 27 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
54
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 27 [entry_number:27] [batch:demo] [message:Debug entry 27] [source:15_logger_demo.rb:93]
|
55
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 28 - generating content to trigger file rolling when size limit is reached [message:Log entry 28 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
56
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 28 [entry_number:28] [batch:demo] [message:Debug entry 28] [source:15_logger_demo.rb:93]
|
57
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 29 - generating content to trigger file rolling when size limit is reached [message:Log entry 29 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
58
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 29 [entry_number:29] [batch:demo] [message:Debug entry 29] [source:15_logger_demo.rb:93]
|
59
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 30 - generating content to trigger file rolling when size limit is reached [message:Log entry 30 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
60
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 30 [entry_number:30] [batch:demo] [message:Debug entry 30] [source:15_logger_demo.rb:93]
|
61
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 31 - generating content to trigger file rolling when size limit is reached [message:Log entry 31 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
62
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 31 [entry_number:31] [batch:demo] [message:Debug entry 31] [source:15_logger_demo.rb:93]
|
63
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 32 - generating content to trigger file rolling when size limit is reached [message:Log entry 32 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
64
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 32 [entry_number:32] [batch:demo] [message:Debug entry 32] [source:15_logger_demo.rb:93]
|
65
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 33 - generating content to trigger file rolling when size limit is reached [message:Log entry 33 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
66
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 33 [entry_number:33] [batch:demo] [message:Debug entry 33] [source:15_logger_demo.rb:93]
|
67
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 34 - generating content to trigger file rolling when size limit is reached [message:Log entry 34 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
68
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 34 [entry_number:34] [batch:demo] [message:Debug entry 34] [source:15_logger_demo.rb:93]
|
69
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 35 - generating content to trigger file rolling when size limit is reached [message:Log entry 35 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
70
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 35 [entry_number:35] [batch:demo] [message:Debug entry 35] [source:15_logger_demo.rb:93]
|
71
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 36 - generating content to trigger file rolling when size limit is reached [message:Log entry 36 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
72
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 36 [entry_number:36] [batch:demo] [message:Debug entry 36] [source:15_logger_demo.rb:93]
|
73
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 37 - generating content to trigger file rolling when size limit is reached [message:Log entry 37 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
74
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 37 [entry_number:37] [batch:demo] [message:Debug entry 37] [source:15_logger_demo.rb:93]
|
75
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 38 - generating content to trigger file rolling when size limit is reached [message:Log entry 38 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
76
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 38 [entry_number:38] [batch:demo] [message:Debug entry 38] [source:15_logger_demo.rb:93]
|
77
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 39 - generating content to trigger file rolling when size limit is reached [message:Log entry 39 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
78
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 39 [entry_number:39] [batch:demo] [message:Debug entry 39] [source:15_logger_demo.rb:93]
|
79
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 40 - generating content to trigger file rolling when size limit is reached [message:Log entry 40 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
80
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 40 [entry_number:40] [batch:demo] [message:Debug entry 40] [source:15_logger_demo.rb:93]
|
81
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 41 - generating content to trigger file rolling when size limit is reached [message:Log entry 41 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
82
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 41 [entry_number:41] [batch:demo] [message:Debug entry 41] [source:15_logger_demo.rb:93]
|
83
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 42 - generating content to trigger file rolling when size limit is reached [message:Log entry 42 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
84
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 42 [entry_number:42] [batch:demo] [message:Debug entry 42] [source:15_logger_demo.rb:93]
|
85
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 43 - generating content to trigger file rolling when size limit is reached [message:Log entry 43 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
86
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 43 [entry_number:43] [batch:demo] [message:Debug entry 43] [source:15_logger_demo.rb:93]
|
87
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 44 - generating content to trigger file rolling when size limit is reached [message:Log entry 44 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
88
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 44 [entry_number:44] [batch:demo] [message:Debug entry 44] [source:15_logger_demo.rb:93]
|
89
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 45 - generating content to trigger file rolling when size limit is reached [message:Log entry 45 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
90
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 45 [entry_number:45] [batch:demo] [message:Debug entry 45] [source:15_logger_demo.rb:93]
|
91
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 46 - generating content to trigger file rolling when size limit is reached [message:Log entry 46 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
92
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 46 [entry_number:46] [batch:demo] [message:Debug entry 46] [source:15_logger_demo.rb:93]
|
93
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 47 - generating content to trigger file rolling when size limit is reached [message:Log entry 47 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
94
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 47 [entry_number:47] [batch:demo] [message:Debug entry 47] [source:15_logger_demo.rb:93]
|
95
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 48 - generating content to trigger file rolling when size limit is reached [message:Log entry 48 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
96
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 48 [entry_number:48] [batch:demo] [message:Debug entry 48] [source:15_logger_demo.rb:93]
|
97
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 49 - generating content to trigger file rolling when size limit is reached [message:Log entry 49 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
98
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 49 [entry_number:49] [batch:demo] [message:Debug entry 49] [source:15_logger_demo.rb:93]
|
99
|
+
[2025-09-10T09:53:01.165 INFO (19258) #] Log entry 50 - generating content to trigger file rolling when size limit is reached [message:Log entry 50 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
100
|
+
[2025-09-10T09:53:01.165 DEBUG (19258) #] Debug entry 50 [entry_number:50] [batch:demo] [message:Debug entry 50] [source:15_logger_demo.rb:93]
|
@@ -0,0 +1,100 @@
|
|
1
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 1 - generating content to trigger file rolling when size limit is reached [message:Log entry 1 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
2
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 1 [entry_number:1] [batch:demo] [message:Debug entry 1] [source:15_logger_demo.rb:93]
|
3
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 2 - generating content to trigger file rolling when size limit is reached [message:Log entry 2 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
4
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 2 [entry_number:2] [batch:demo] [message:Debug entry 2] [source:15_logger_demo.rb:93]
|
5
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 3 - generating content to trigger file rolling when size limit is reached [message:Log entry 3 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
6
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 3 [entry_number:3] [batch:demo] [message:Debug entry 3] [source:15_logger_demo.rb:93]
|
7
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 4 - generating content to trigger file rolling when size limit is reached [message:Log entry 4 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
8
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 4 [entry_number:4] [batch:demo] [message:Debug entry 4] [source:15_logger_demo.rb:93]
|
9
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 5 - generating content to trigger file rolling when size limit is reached [message:Log entry 5 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
10
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 5 [entry_number:5] [batch:demo] [message:Debug entry 5] [source:15_logger_demo.rb:93]
|
11
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 6 - generating content to trigger file rolling when size limit is reached [message:Log entry 6 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
12
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 6 [entry_number:6] [batch:demo] [message:Debug entry 6] [source:15_logger_demo.rb:93]
|
13
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 7 - generating content to trigger file rolling when size limit is reached [message:Log entry 7 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
14
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 7 [entry_number:7] [batch:demo] [message:Debug entry 7] [source:15_logger_demo.rb:93]
|
15
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 8 - generating content to trigger file rolling when size limit is reached [message:Log entry 8 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
16
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 8 [entry_number:8] [batch:demo] [message:Debug entry 8] [source:15_logger_demo.rb:93]
|
17
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 9 - generating content to trigger file rolling when size limit is reached [message:Log entry 9 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
18
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 9 [entry_number:9] [batch:demo] [message:Debug entry 9] [source:15_logger_demo.rb:93]
|
19
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 10 - generating content to trigger file rolling when size limit is reached [message:Log entry 10 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
20
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 10 [entry_number:10] [batch:demo] [message:Debug entry 10] [source:15_logger_demo.rb:93]
|
21
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 11 - generating content to trigger file rolling when size limit is reached [message:Log entry 11 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
22
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 11 [entry_number:11] [batch:demo] [message:Debug entry 11] [source:15_logger_demo.rb:93]
|
23
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 12 - generating content to trigger file rolling when size limit is reached [message:Log entry 12 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
24
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 12 [entry_number:12] [batch:demo] [message:Debug entry 12] [source:15_logger_demo.rb:93]
|
25
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 13 - generating content to trigger file rolling when size limit is reached [message:Log entry 13 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
26
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 13 [entry_number:13] [batch:demo] [message:Debug entry 13] [source:15_logger_demo.rb:93]
|
27
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 14 - generating content to trigger file rolling when size limit is reached [message:Log entry 14 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
28
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 14 [entry_number:14] [batch:demo] [message:Debug entry 14] [source:15_logger_demo.rb:93]
|
29
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 15 - generating content to trigger file rolling when size limit is reached [message:Log entry 15 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
30
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 15 [entry_number:15] [batch:demo] [message:Debug entry 15] [source:15_logger_demo.rb:93]
|
31
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 16 - generating content to trigger file rolling when size limit is reached [message:Log entry 16 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
32
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 16 [entry_number:16] [batch:demo] [message:Debug entry 16] [source:15_logger_demo.rb:93]
|
33
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 17 - generating content to trigger file rolling when size limit is reached [message:Log entry 17 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
34
|
+
[2025-09-10T10:00:46.601 DEBUG (22295) #] Debug entry 17 [entry_number:17] [batch:demo] [message:Debug entry 17] [source:15_logger_demo.rb:93]
|
35
|
+
[2025-09-10T10:00:46.601 INFO (22295) #] Log entry 18 - generating content to trigger file rolling when size limit is reached [message:Log entry 18 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
36
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 18 [entry_number:18] [batch:demo] [message:Debug entry 18] [source:15_logger_demo.rb:93]
|
37
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 19 - generating content to trigger file rolling when size limit is reached [message:Log entry 19 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
38
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 19 [entry_number:19] [batch:demo] [message:Debug entry 19] [source:15_logger_demo.rb:93]
|
39
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 20 - generating content to trigger file rolling when size limit is reached [message:Log entry 20 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
40
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 20 [entry_number:20] [batch:demo] [message:Debug entry 20] [source:15_logger_demo.rb:93]
|
41
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 21 - generating content to trigger file rolling when size limit is reached [message:Log entry 21 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
42
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 21 [entry_number:21] [batch:demo] [message:Debug entry 21] [source:15_logger_demo.rb:93]
|
43
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 22 - generating content to trigger file rolling when size limit is reached [message:Log entry 22 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
44
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 22 [entry_number:22] [batch:demo] [message:Debug entry 22] [source:15_logger_demo.rb:93]
|
45
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 23 - generating content to trigger file rolling when size limit is reached [message:Log entry 23 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
46
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 23 [entry_number:23] [batch:demo] [message:Debug entry 23] [source:15_logger_demo.rb:93]
|
47
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 24 - generating content to trigger file rolling when size limit is reached [message:Log entry 24 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
48
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 24 [entry_number:24] [batch:demo] [message:Debug entry 24] [source:15_logger_demo.rb:93]
|
49
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 25 - generating content to trigger file rolling when size limit is reached [message:Log entry 25 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
50
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 25 [entry_number:25] [batch:demo] [message:Debug entry 25] [source:15_logger_demo.rb:93]
|
51
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 26 - generating content to trigger file rolling when size limit is reached [message:Log entry 26 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
52
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 26 [entry_number:26] [batch:demo] [message:Debug entry 26] [source:15_logger_demo.rb:93]
|
53
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 27 - generating content to trigger file rolling when size limit is reached [message:Log entry 27 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
54
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 27 [entry_number:27] [batch:demo] [message:Debug entry 27] [source:15_logger_demo.rb:93]
|
55
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 28 - generating content to trigger file rolling when size limit is reached [message:Log entry 28 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
56
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 28 [entry_number:28] [batch:demo] [message:Debug entry 28] [source:15_logger_demo.rb:93]
|
57
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 29 - generating content to trigger file rolling when size limit is reached [message:Log entry 29 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
58
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 29 [entry_number:29] [batch:demo] [message:Debug entry 29] [source:15_logger_demo.rb:93]
|
59
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 30 - generating content to trigger file rolling when size limit is reached [message:Log entry 30 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
60
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 30 [entry_number:30] [batch:demo] [message:Debug entry 30] [source:15_logger_demo.rb:93]
|
61
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 31 - generating content to trigger file rolling when size limit is reached [message:Log entry 31 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
62
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 31 [entry_number:31] [batch:demo] [message:Debug entry 31] [source:15_logger_demo.rb:93]
|
63
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 32 - generating content to trigger file rolling when size limit is reached [message:Log entry 32 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
64
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 32 [entry_number:32] [batch:demo] [message:Debug entry 32] [source:15_logger_demo.rb:93]
|
65
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 33 - generating content to trigger file rolling when size limit is reached [message:Log entry 33 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
66
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 33 [entry_number:33] [batch:demo] [message:Debug entry 33] [source:15_logger_demo.rb:93]
|
67
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 34 - generating content to trigger file rolling when size limit is reached [message:Log entry 34 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
68
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 34 [entry_number:34] [batch:demo] [message:Debug entry 34] [source:15_logger_demo.rb:93]
|
69
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 35 - generating content to trigger file rolling when size limit is reached [message:Log entry 35 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
70
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 35 [entry_number:35] [batch:demo] [message:Debug entry 35] [source:15_logger_demo.rb:93]
|
71
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 36 - generating content to trigger file rolling when size limit is reached [message:Log entry 36 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
72
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 36 [entry_number:36] [batch:demo] [message:Debug entry 36] [source:15_logger_demo.rb:93]
|
73
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 37 - generating content to trigger file rolling when size limit is reached [message:Log entry 37 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
74
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 37 [entry_number:37] [batch:demo] [message:Debug entry 37] [source:15_logger_demo.rb:93]
|
75
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 38 - generating content to trigger file rolling when size limit is reached [message:Log entry 38 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
76
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 38 [entry_number:38] [batch:demo] [message:Debug entry 38] [source:15_logger_demo.rb:93]
|
77
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 39 - generating content to trigger file rolling when size limit is reached [message:Log entry 39 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
78
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 39 [entry_number:39] [batch:demo] [message:Debug entry 39] [source:15_logger_demo.rb:93]
|
79
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 40 - generating content to trigger file rolling when size limit is reached [message:Log entry 40 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
80
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 40 [entry_number:40] [batch:demo] [message:Debug entry 40] [source:15_logger_demo.rb:93]
|
81
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 41 - generating content to trigger file rolling when size limit is reached [message:Log entry 41 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
82
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 41 [entry_number:41] [batch:demo] [message:Debug entry 41] [source:15_logger_demo.rb:93]
|
83
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 42 - generating content to trigger file rolling when size limit is reached [message:Log entry 42 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
84
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 42 [entry_number:42] [batch:demo] [message:Debug entry 42] [source:15_logger_demo.rb:93]
|
85
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 43 - generating content to trigger file rolling when size limit is reached [message:Log entry 43 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
86
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 43 [entry_number:43] [batch:demo] [message:Debug entry 43] [source:15_logger_demo.rb:93]
|
87
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 44 - generating content to trigger file rolling when size limit is reached [message:Log entry 44 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
88
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 44 [entry_number:44] [batch:demo] [message:Debug entry 44] [source:15_logger_demo.rb:93]
|
89
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 45 - generating content to trigger file rolling when size limit is reached [message:Log entry 45 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
90
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 45 [entry_number:45] [batch:demo] [message:Debug entry 45] [source:15_logger_demo.rb:93]
|
91
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 46 - generating content to trigger file rolling when size limit is reached [message:Log entry 46 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
92
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 46 [entry_number:46] [batch:demo] [message:Debug entry 46] [source:15_logger_demo.rb:93]
|
93
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 47 - generating content to trigger file rolling when size limit is reached [message:Log entry 47 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
94
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 47 [entry_number:47] [batch:demo] [message:Debug entry 47] [source:15_logger_demo.rb:93]
|
95
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 48 - generating content to trigger file rolling when size limit is reached [message:Log entry 48 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
96
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 48 [entry_number:48] [batch:demo] [message:Debug entry 48] [source:15_logger_demo.rb:93]
|
97
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 49 - generating content to trigger file rolling when size limit is reached [message:Log entry 49 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
98
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 49 [entry_number:49] [batch:demo] [message:Debug entry 49] [source:15_logger_demo.rb:93]
|
99
|
+
[2025-09-10T10:00:46.602 INFO (22295) #] Log entry 50 - generating content to trigger file rolling when size limit is reached [message:Log entry 50 - generating content to trigger file rolling when size limit is reached] [source:15_logger_demo.rb:92]
|
100
|
+
[2025-09-10T10:00:46.602 DEBUG (22295) #] Debug entry 50 [entry_number:50] [batch:demo] [message:Debug entry 50] [source:15_logger_demo.rb:93]
|
@@ -0,0 +1,114 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: utf-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
|
5
|
+
# Example demonstrating multi-transport functionality in SmartMessage
|
6
|
+
# This example shows how to configure and use multiple transports for a single message
|
7
|
+
|
8
|
+
require_relative '../lib/smart_message'
|
9
|
+
|
10
|
+
# Define a simple message class for demonstration
|
11
|
+
class MultiTransportMessage < SmartMessage::Base
|
12
|
+
property :content, required: true
|
13
|
+
property :priority, default: 'normal'
|
14
|
+
|
15
|
+
# Configure multiple transports for this message
|
16
|
+
transport [
|
17
|
+
SmartMessage::Transport::StdoutTransport.new(format: :pretty),
|
18
|
+
SmartMessage::Transport::MemoryTransport.new(auto_process: false)
|
19
|
+
]
|
20
|
+
end
|
21
|
+
|
22
|
+
# Example 1: Single transport (backward compatibility)
|
23
|
+
class SingleTransportMessage < SmartMessage::Base
|
24
|
+
property :data, required: true
|
25
|
+
|
26
|
+
# Single transport works exactly as before
|
27
|
+
transport SmartMessage::Transport::StdoutTransport.new
|
28
|
+
end
|
29
|
+
|
30
|
+
puts "=== SmartMessage Multi-Transport Demo ==="
|
31
|
+
puts
|
32
|
+
|
33
|
+
# Test single transport (backward compatibility)
|
34
|
+
puts "1. Single Transport Example:"
|
35
|
+
single_msg = SingleTransportMessage.new(data: "Hello from single transport", from: "demo_app")
|
36
|
+
puts " Transport count: #{single_msg.transports.length}"
|
37
|
+
puts " Is single transport? #{single_msg.single_transport?}"
|
38
|
+
single_msg.publish
|
39
|
+
puts
|
40
|
+
|
41
|
+
# Test multiple transports
|
42
|
+
puts "2. Multiple Transport Example:"
|
43
|
+
multi_msg = MultiTransportMessage.new(
|
44
|
+
content: "Hello from multiple transports!",
|
45
|
+
priority: "high",
|
46
|
+
from: "demo_app"
|
47
|
+
)
|
48
|
+
puts " Transport count: #{multi_msg.transports.length}"
|
49
|
+
puts " Is multiple transports? #{multi_msg.multiple_transports?}"
|
50
|
+
puts " Transport classes: #{multi_msg.transports.map { |t| t.class.name.split('::').last }.join(', ')}"
|
51
|
+
puts " Primary transport (backward compat): #{multi_msg.transport.class.name.split('::').last}"
|
52
|
+
multi_msg.publish
|
53
|
+
puts
|
54
|
+
|
55
|
+
# Test instance-level transport override
|
56
|
+
puts "3. Instance-level Transport Override:"
|
57
|
+
override_msg = MultiTransportMessage.new(content: "Override example", from: "demo_app")
|
58
|
+
override_msg.transport(SmartMessage::Transport::StdoutTransport.new(format: :json))
|
59
|
+
puts " Override transport count: #{override_msg.transports.length}"
|
60
|
+
puts " Override is single? #{override_msg.single_transport?}"
|
61
|
+
override_msg.publish
|
62
|
+
puts
|
63
|
+
|
64
|
+
# Test transport failure resilience
|
65
|
+
puts "4. Transport Failure Resilience:"
|
66
|
+
class FailingTransport < SmartMessage::Transport::Base
|
67
|
+
def publish(message)
|
68
|
+
raise StandardError, "Simulated transport failure"
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
class ResilientMessage < SmartMessage::Base
|
73
|
+
property :message, required: true
|
74
|
+
|
75
|
+
transport [
|
76
|
+
FailingTransport.new,
|
77
|
+
SmartMessage::Transport::StdoutTransport.new(format: :compact)
|
78
|
+
]
|
79
|
+
end
|
80
|
+
|
81
|
+
resilient_msg = ResilientMessage.new(message: "Testing failure resilience", from: "demo_app")
|
82
|
+
puts " Publishing with one failing transport..."
|
83
|
+
begin
|
84
|
+
resilient_msg.publish
|
85
|
+
puts " ✓ Message published successfully despite transport failure"
|
86
|
+
rescue => e
|
87
|
+
puts " ✗ Unexpected error: #{e.message}"
|
88
|
+
end
|
89
|
+
puts
|
90
|
+
|
91
|
+
# Test all transports failing
|
92
|
+
puts "5. All Transports Failing:"
|
93
|
+
class AllFailingMessage < SmartMessage::Base
|
94
|
+
property :data
|
95
|
+
|
96
|
+
transport [
|
97
|
+
FailingTransport.new,
|
98
|
+
FailingTransport.new
|
99
|
+
]
|
100
|
+
end
|
101
|
+
|
102
|
+
failing_msg = AllFailingMessage.new(data: "This will fail", from: "demo_app")
|
103
|
+
puts " Publishing with all transports failing..."
|
104
|
+
begin
|
105
|
+
failing_msg.publish
|
106
|
+
puts " ✗ Expected failure did not occur"
|
107
|
+
rescue SmartMessage::Errors::PublishError => e
|
108
|
+
puts " ✓ Correctly caught PublishError: #{e.message.split(':').first}"
|
109
|
+
rescue => e
|
110
|
+
puts " ✗ Unexpected error type: #{e.class} - #{e.message}"
|
111
|
+
end
|
112
|
+
puts
|
113
|
+
|
114
|
+
puts "=== Demo Complete ==="
|
@@ -79,11 +79,10 @@ class SensorDataMessage < SmartMessage::Base
|
|
79
79
|
|
80
80
|
config do
|
81
81
|
transport SHARED_TRANSPORT
|
82
|
-
serializer SmartMessage::Serializer::Json.new
|
83
82
|
end
|
84
83
|
|
85
|
-
def
|
86
|
-
message_header, message_payload =
|
84
|
+
def process(message)
|
85
|
+
message_header, message_payload = message
|
87
86
|
sensor_data = JSON.parse(message_payload)
|
88
87
|
icon = case sensor_data['device_type']
|
89
88
|
when 'thermostat' then '🌡️'
|
@@ -114,11 +113,10 @@ class DeviceCommandMessage < SmartMessage::Base
|
|
114
113
|
|
115
114
|
config do
|
116
115
|
transport SHARED_TRANSPORT
|
117
|
-
serializer SmartMessage::Serializer::Json.new
|
118
116
|
end
|
119
117
|
|
120
|
-
def
|
121
|
-
message_header, message_payload =
|
118
|
+
def process(message)
|
119
|
+
message_header, message_payload = message
|
122
120
|
command_data = JSON.parse(message_payload)
|
123
121
|
puts "🎛️ Command sent: #{command_data['command']} to #{command_data['device_id']} (requested by #{command_data['requested_by']})"
|
124
122
|
end
|
@@ -147,11 +145,10 @@ class AlertMessage < SmartMessage::Base
|
|
147
145
|
|
148
146
|
config do
|
149
147
|
transport SHARED_TRANSPORT
|
150
|
-
serializer SmartMessage::Serializer::Json.new
|
151
148
|
end
|
152
149
|
|
153
|
-
def
|
154
|
-
message_header, message_payload =
|
150
|
+
def process(message)
|
151
|
+
message_header, message_payload = message
|
155
152
|
alert_data = JSON.parse(message_payload)
|
156
153
|
severity_icon = case alert_data['severity']
|
157
154
|
when 'low' then '💙'
|
@@ -176,11 +173,10 @@ class DashboardStatusMessage < SmartMessage::Base
|
|
176
173
|
|
177
174
|
config do
|
178
175
|
transport SHARED_TRANSPORT
|
179
|
-
serializer SmartMessage::Serializer::Json.new
|
180
176
|
end
|
181
177
|
|
182
|
-
def
|
183
|
-
message_header, message_payload =
|
178
|
+
def process(message)
|
179
|
+
message_header, message_payload = message
|
184
180
|
status_data = JSON.parse(message_payload)
|
185
181
|
status_icon = case status_data['system_status']
|
186
182
|
when 'normal' then '✅'
|
@@ -209,8 +205,8 @@ class SmartThermostat
|
|
209
205
|
DeviceCommandMessage.subscribe("SmartThermostat.handle_command")
|
210
206
|
end
|
211
207
|
|
212
|
-
def
|
213
|
-
message_header, message_payload =
|
208
|
+
def handle_command(message)
|
209
|
+
message_header, message_payload = message
|
214
210
|
command_data = JSON.parse(message_payload)
|
215
211
|
|
216
212
|
# Only process commands intended for thermostats with our device ID
|
@@ -293,8 +289,8 @@ class SecurityCamera
|
|
293
289
|
DeviceCommandMessage.subscribe("SecurityCamera.handle_command")
|
294
290
|
end
|
295
291
|
|
296
|
-
def
|
297
|
-
message_header, message_payload =
|
292
|
+
def handle_command(message)
|
293
|
+
message_header, message_payload = message
|
298
294
|
command_data = JSON.parse(message_payload)
|
299
295
|
|
300
296
|
# Only process commands intended for cameras with our device ID
|
@@ -404,8 +400,8 @@ class SmartDoorLock
|
|
404
400
|
DeviceCommandMessage.subscribe("SmartDoorLock.handle_command")
|
405
401
|
end
|
406
402
|
|
407
|
-
def
|
408
|
-
message_header, message_payload =
|
403
|
+
def handle_command(message)
|
404
|
+
message_header, message_payload = message
|
409
405
|
command_data = JSON.parse(message_payload)
|
410
406
|
|
411
407
|
# Only process commands intended for door locks with our device ID
|
@@ -486,20 +482,20 @@ class IoTDashboard
|
|
486
482
|
DeviceCommandMessage.subscribe("IoTDashboard.log_command")
|
487
483
|
end
|
488
484
|
|
489
|
-
def
|
490
|
-
message_header, message_payload =
|
485
|
+
def handle_sensor_data(message)
|
486
|
+
message_header, message_payload = message
|
491
487
|
@@instance ||= new
|
492
488
|
@@instance.process_sensor_data(message_header, message_payload)
|
493
489
|
end
|
494
490
|
|
495
|
-
def
|
496
|
-
message_header, message_payload =
|
491
|
+
def handle_alert(message)
|
492
|
+
message_header, message_payload = message
|
497
493
|
@@instance ||= new
|
498
494
|
@@instance.process_alert(message_header, message_payload)
|
499
495
|
end
|
500
496
|
|
501
|
-
def
|
502
|
-
message_header, message_payload =
|
497
|
+
def log_command(message)
|
498
|
+
message_header, message_payload = message
|
503
499
|
@@instance ||= new
|
504
500
|
@@instance.log_device_command(message_header, message_payload)
|
505
501
|
end
|
data/examples/redis/README.md
CHANGED
@@ -135,7 +135,6 @@ SmartMessage.configure do |config|
|
|
135
135
|
url: 'redis://localhost:6379',
|
136
136
|
db: 1 # Optional: use specific Redis database
|
137
137
|
)
|
138
|
-
config.serializer = SmartMessage::Serializer::Json.new
|
139
138
|
end
|
140
139
|
```
|
141
140
|
|
@@ -147,7 +146,6 @@ class MyMessage < SmartMessage::Base
|
|
147
146
|
url: 'redis://localhost:6379',
|
148
147
|
db: 2
|
149
148
|
)
|
150
|
-
serializer SmartMessage::Serializer::Json.new
|
151
149
|
end
|
152
150
|
end
|
153
151
|
```
|
@@ -0,0 +1,12 @@
|
|
1
|
+
def box_it(strings, bchar: "#")
|
2
|
+
# Ensure we have an array of strings
|
3
|
+
rows = Array(strings).map{|s| s.to_s.strip}
|
4
|
+
max_width = rows.map(&:length).max || 0
|
5
|
+
|
6
|
+
border = bchar * (max_width + 4)
|
7
|
+
puts border
|
8
|
+
rows.each do |s|
|
9
|
+
puts "#{bchar} #{s.center(max_width)} #{bchar}"
|
10
|
+
end
|
11
|
+
puts border
|
12
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# ~/lib/ruby/doing.rb
|
2
|
+
# puts feedback stdout content around an action.
|
3
|
+
|
4
|
+
def doing(action_text = nil, ok: 'done', fail: 'failed')
|
5
|
+
action_text ||= 'Working'
|
6
|
+
print("#{action_text} ... ")
|
7
|
+
STDOUT.flush
|
8
|
+
start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
|
9
|
+
begin
|
10
|
+
result = yield if block_given?
|
11
|
+
elapsed = Process.clock_gettime(Process::CLOCK_MONOTONIC) - start
|
12
|
+
elapsed_str = elapsed < 0.01 ? "<0.01s" : "#{elapsed.round(2)}s"
|
13
|
+
puts "#{ok} #{elapsed_str}"
|
14
|
+
result
|
15
|
+
rescue => e
|
16
|
+
puts "#{fail} #{e.message}"
|
17
|
+
raise
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
|
2
|
+
You: write some ruby code for me: I want a method that takes an Array of left justified Strings an
|
3
|
+
d centers each entry based upon the longest entry then outputs these strings to stdout enclosed within a box made
|
4
|
+
out of the ascii character for pound sign.
|
5
|
+
|
6
|
+
AI:
|
7
|
+
def boxed_center(strings)
|
8
|
+
# Ensure we have an array of strings
|
9
|
+
rows = Array(strings).map(&:to_s)
|
10
|
+
max_width = rows.map(&:length).max || 0
|
11
|
+
|
12
|
+
border = "#" * (max_width + 4)
|
13
|
+
puts border
|
14
|
+
rows.each do |s|
|
15
|
+
puts "# #{s.center(max_width)} #"
|
16
|
+
end
|
17
|
+
puts border
|
18
|
+
end
|
19
|
+
|
20
|
+
# Example:
|
21
|
+
# boxed_center(["alpha", "beta", "gamma rays", "delta"])
|
22
|
+
# Output:
|
23
|
+
# ##############
|
24
|
+
# # alpha #
|
25
|
+
# # beta #
|
26
|
+
# # gamma rays #
|
27
|
+
# # delta #
|
28
|
+
# ##############
|