If we are enabling async_insert, query log missing all insert queries.

We are using log for monitoring, too (inserts time, inserts frequency etc), and with  async_insert query_log is empty. Maybe log can be written anyway?
assert(internal || CurrentThread::get().getQueryContext()->getCurrentQueryId() == CurrentThread::getQueryId());
    const Settings & settings = context->getSettingsRef();
    ASTPtr ast;
    const char * query_end;
    
    size_t max_query_size = 0;
    if (!internal) max_query_size = settings.max_query_size;
    String query_database;
    String query_table;
    try
    {
        ParserQuery parser(end);
        
        ast = parseQuery(parser, begin, end, "", max_query_size, settings.max_parser_depth);
        
        
        if (const auto * select_query = ast->as<ASTSelectQuery>())
        {
            if (auto new_settings = select_query->settings())
                InterpreterSetQuery(new_settings, context).executeForCurrentContext();
        }
        else if (const auto * select_with_union_query = ast->as<ASTSelectWithUnionQuery>())
        {
            applySettingsFromSelectWithUnion(*select_with_union_query, context);
        }
        else if (const auto * query_with_output = dynamic_cast<const ASTQueryWithOutput *>(ast.get()))
        {
            if (query_with_output->settings_ast)
                InterpreterSetQuery(query_with_output->settings_ast, context).executeForCurrentContext();
        }