Quellcode durchsuchen

Merge pull request #494 from xuan525/master

添加时区设置
J_hao104 vor 6 Jahren
Ursprung
Commit
3ea88243a5
3 geänderte Dateien mit 18 neuen und 2 gelöschten Zeilen
  1. 4 0
      handler/configHandler.py
  2. 4 2
      helper/scheduler.py
  3. 10 0
      setting.py

+ 4 - 0
handler/configHandler.py

@@ -57,3 +57,7 @@ class ConfigHandler(object):
     @LazyProperty
     def maxFailCount(self):
         return os.getenv("MAX_FAIL_COUNT", setting.MAX_FAIL_COUNT)
+
+    @LazyProperty
+    def timezone(self):
+        return os.getenv("TIMEZONE", getattr(setting, 'TIMEZONE', None))

+ 4 - 2
helper/scheduler.py

@@ -12,6 +12,7 @@
 """
 __author__ = 'JHao'
 
+from handler.configHandler import ConfigHandler
 from apscheduler.schedulers.blocking import BlockingScheduler
 from apscheduler.executors.pool import ProcessPoolExecutor
 
@@ -44,8 +45,9 @@ def runProxyCheck():
 def runScheduler():
     runProxyFetch()
 
+    timezone = ConfigHandler().timezone
     scheduler_log = LogHandler("scheduler")
-    scheduler = BlockingScheduler(logger=scheduler_log)
+    scheduler = BlockingScheduler(logger=scheduler_log, timezone=timezone)
 
     scheduler.add_job(runProxyFetch, 'interval', minutes=4, id="proxy_fetch", name="proxy采集")
     scheduler.add_job(runProxyCheck, 'interval', minutes=2, id="proxy_check", name="proxy检查")
@@ -59,7 +61,7 @@ def runScheduler():
         'max_instances': 10
     }
 
-    scheduler.configure(executors=executors, job_defaults=job_defaults)
+    scheduler.configure(executors=executors, job_defaults=job_defaults, timezone=timezone)
 
     scheduler.start()
 

+ 10 - 0
setting.py

@@ -67,3 +67,13 @@ VERIFY_TIMEOUT = 10
 MAX_FAIL_COUNT = 0
 
 
+# ############# scheduler config #################
+
+# Set the timezone for the scheduler forcely (optional)
+# If it is running on a VM, and 
+#   "ValueError: Timezone offset does not match system offset" 
+#   was raised during scheduling.
+# Please uncomment the following line and set a timezone for the scheduler.
+# Otherwise it will detect the timezone from the system automatically.
+
+# TIMEZONE = "Asia/Shanghai"