Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure Data Factory V2在触发管道运行时使用昨天的日期_Azure_Triggers_Azure Data Factory 2 - Fatal编程技术网

Azure Data Factory V2在触发管道运行时使用昨天的日期

Azure Data Factory V2在触发管道运行时使用昨天的日期,azure,triggers,azure-data-factory-2,Azure,Triggers,Azure Data Factory 2,我有一个Azure数据工厂(v2),用于每晚(UTC凌晨2点)将数据库内容备份到blob存储。但是,我希望文件名包含生成备份的月份(dd),但它总是在前一天 文件名是使用表达式生成的- @{formatDateTime(pipeline().parameters.windowStart,'dd')}.json 例如,今天凌晨3点的运行应该被称为23.json,但实际上它被称为22.json。凌晨3点是预期的运行时间,因为我在英国,目前在英国夏令时(UTC+1) 查看运行的参数,我可以看到win

我有一个Azure数据工厂(v2),用于每晚(UTC凌晨2点)将数据库内容备份到blob存储。但是,我希望文件名包含生成备份的月份(
dd
),但它总是在前一天

文件名是使用表达式生成的-

@{formatDateTime(pipeline().parameters.windowStart,'dd')}.json
例如,今天凌晨3点的运行应该被称为
23.json
,但实际上它被称为
22.json
。凌晨3点是预期的运行时间,因为我在英国,目前在英国夏令时(UTC+1)

查看运行的参数,我可以看到
windowStart
确实是一个休息日。例如,23日凌晨2点触发的今天的跑步时间是2020年9月22日凌晨2:00:00

有谁能解释为什么Data Factory会以这种方式运行,以及我希望如何使其按预期工作

这是从数据工厂导出的触发器

{
    "name": "Trigger_Copy_Transactions",
    "properties": {
        "annotations": [],
        "runtimeState": "Started",
        "pipeline": {
            "pipelineReference": {
                "referenceName": "Copy_Transactions",
                "type": "PipelineReference"
            },
            "parameters": {
                "windowStart": "@trigger().outputs.windowStartTime"
            }
        },
        "type": "TumblingWindowTrigger",
        "typeProperties": {
            "frequency": "Hour",
            "interval": 24,
            "startTime": "2020-08-24T02:00:00Z",
            "delay": "00:00:00",
            "maxConcurrency": 50,
            "retryPolicy": {
                "intervalInSeconds": 30
            },
            "dependsOn": []
        }
    }
}

您可以尝试的一件事是强制在运行IR的同一时区生成文件。例如,我们有一个自托管的IR,所以当我们生成文件时,它与EST时间不匹配。在这种情况下,我做了以下工作:

@concat('File_name',formatDateTime(
convertFromUtc(utcnow(),'Eastern Standard Time'),'yyyy-MM-dd'),'.txt')
也许这样做会迫使你选择合适的日期


运行此作业时,您是否也使用自动生成的IR或自托管的IR?

非常好,谢谢,现在备份的名称与我预期的完全一致。