iT邦幫忙

0

佈署在IIS 的 Flask App 透過Flask_APScheduler與Logging無法正常輸出資料

  • 分享至 

  • xImage

問題

目前有一支具SSL憑證的 Flask App,
並透過 Flask_APScheduler 定時存一個字串到 log file,
在 Debug Mode 下,程式會自動創建log.txt,
完全沒有報錯都能順利儲存資料進 log file,
但在 IIS 啟動站台後,卻無法正常輸出資料,也不會自動創建log.txt
不知道是不是 IIS 啟動有問題? 還是啟動前有什麼方式需要重新佈署讓IIS更新程式碼?

以下是我測試的程式碼:

from flask_apscheduler import APScheduler
from flask import Flask
import logging


app = Flask(__name__)

@app.route("/")
def home():
    return "Hello, This is a ReporSender	in IIS Server."
	
	
#設定Logging 參數
logging.basicConfig(level=logging.DEBUG, filename='./log.txt',
	format='[%(asctime)s %(levelname)-8s] %(message)s',
	datefmt='%Y%m%d %H:%M:%S',
	)


#定時任務參數
class Config(object):
    JOBS = [
        {
            'id': 'job1',
            'func':'__main__:ReportSender',
            'trigger':'interval',
            'seconds':5
        }
    ]

app.config.from_object(Config())# 為例項化的flask引入配置

def ReportSender():
    try:
        logging.critical('測試測試')

    except Exception as e:
        logging.error("Catch an exception.", exc_info=True)
		
if __name__ == "__main__":
    try:
        logging.critical("啟動成功")
        scheduler = APScheduler()
        scheduler.init_app(app)
        scheduler.start()
        app.run()       
    except Exception as e:
		logging.error("Catch an exception.", exc_info=True)
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答