0

PythonロガーメッセージをjavascriptポップアップウィンドウにストリーミングするWebサイト用のロガーウィンドウを作成しようとしています。ウィンドウを閉じて再度開くと新しいメッセージが表示されるようになりましたが、N 秒ごとにウィンドウを自動的に更新する (そして dajaxice を呼び出す) JavaScript を書きたいと思います。

私の ajax.py :

@dajaxice_register(method='GET')
def getLogs(request):
  fname = "/path/to/LOG_2015-07-08.log"
  with open(fname,"r") as f:
    lines = f.readlines()
  lines = lines[-15:]  //
  logger.info("Displaying Logs")
  return json.dumps({'message':lines})

私のhtml

<script language="javascript" type="text/javascript">
  function popitup(data) {
    sessionStorage.setItem("logs",data.message);
    newWindow = window.open('/InterfaceApp/LogViewer', 'Log Viewer', 'height=400,width=800,status=yes');
    if(newWindow && !newWindow.closed){

    newWindow.location.reload(true);  //this is my first attempt at a refresh, wasn't quite what I wanted.

    newWindow.focus();
    } 
  }
</script>
<div class="container">
  <input id="LogMessages" type="button" value="View Log Messages" onclick="Dajaxice.InterfaceApp.getLogs(popitup)"/>
</div>

繰り返しますが、ボタンをクリックするとポップアップ ウィンドウが表示されます。ログ ファイルの最後の 15 行でポップアップ ウィンドウを N 秒ごとに更新する必要があります (ユーザーが Web サイトを移動するたびに、行がログに追加されます)。の dajaxice 関数はajax.py、ログ ファイルを取得するものであるため、何らかの方法で呼び出しを更新に含める必要があります。

誰でもこれで私を助けることができますか? 私は何日もそれに苦労してきました。

ありがとう!!

4

1 に答える 1