При локальном запуске приложения-колбы я могу использовать конечные точки, и эти сообщения журнала появляются в ресурсе Application Insights на моем портале Azure.
При запуске приложения-колбы в контейнере служебной фабрики я могу использоватьконечные точки с моего локального компьютера и получают рабочие ответы, информация о запросах действительно появляется в Application Insights, но сообщения журнала не отображаются.
Пример кода:
from flask import Flask, jsonify
from flasgger import Swagger
from applicationinsights.flask.ext import AppInsights
from config.AppConfig import configure_app
# create Flask app
app = Flask(__name__)
# configure app from settings
configure_app(app)
# initiate Application Insights - allowing requests, exceptions and logs to be examined in Azure Portal
appinsights = AppInsights(app)
Swagger(app)
# force flushing application insights handler after each request
@app.after_request
def after_request(response):
appinsights.flush()
return response
# api routes
@app.route('/diagnostics', methods=['GET'])
def get_diagnostics():
"""This is a diagnostics endpoint to test connectivity.
---
operationId: get_diagnostics
produces:
- application/json
responses:
200:
description: returns ok
examples:
{
"status": "ok"
}
"""
app.logger.info('Diagnostics endpoint was used.')
app.logger.debug('This is a debug log message')
app.logger.info('This is an information log message')
app.logger.warn('This is a warning log message')
app.logger.error('This is an error message')
app.logger.critical('This is a critical message')
return jsonify({'status': "ok"}), 200
if __name__ == "__main__":
host = app.config['SERVER_HOST']
port = int(app.config['SERVER_PORT'])
app.logger.info('DataScience starting on port %s ... ', port)
app.run(host, port)
Ключ инструментария установлен вКонфигурация приложения и, как указано, запросы все еще отображаются на портале Azure при локальном запуске.
Есть предложения?Спасибо.