1

私はいくつかのチュートリアルに従いましたが、実際には azure データ ファクトリで他のアクティビティを実行していました。さて、特にこれはアクションを実行しませんが、処理を終了しません。アクティビティ ウィンドウの試行では、次のステータスが表示されます:実行中 (0% 完了)

私は理由を調べており、また、活動のこの段階で何が起こっているかをどのように知るかを理解しています. このことをデバッグする方法はありますか? ソースコードを含めます。何か不足している可能性があると確信しています:

   public class MoveBlobsToSQLActivity : IDotNetActivity
{
    public IDictionary<string, string> Execute(
               IEnumerable<LinkedService> linkedServices, IEnumerable<Dataset> datasets, Activity activity, IActivityLogger logger)
    {
        logger.Write("Start");

        //Get extended properties
        DotNetActivity dotNetActivityPipeline = (DotNetActivity)activity.TypeProperties;

        string sliceStartString = dotNetActivityPipeline.ExtendedProperties["SliceStart"];

        //Get linked service details
        Dataset inputDataset = datasets.Single(dataset => dataset.Name == activity.Inputs.Single().Name);
        Dataset outputDataset = datasets.Single(dataset => dataset.Name == activity.Outputs.Single().Name);

        /*
            DO STUFF
        */

        logger.Write("End");

        return new Dictionary<string, string>();
    }
}

更新 1:

この投稿を見つけて、 github リポジトリの指示に従った後、アクティビティをデバッグすることができました。

ここDataset inputDataset = datasets.Single(dataset => dataset.Name == activity.Inputs.Single().Name);でエラーが発生し、エラーで実行が終了することを期待していましたが、デバッガーでは、パイプラインがタイムアウトするまで同じ結果になり続けました。変。エラーを削除しましたが、デバッガーは終了しますが、パイプラインは終了しません:(。

更新 2:

データ ファクトリがカスタム アクティビティのコードを何らかの方法で使用しているかどうかはわかりません。変更を加えました: 何もありません。コードを含む zip ファイルを削除しました: 何もありません。アクティビティが実行中であると言うだけです。想定されたコードがなくなったとしても、何も変わらないようです。どこかにキャッシュされていると思います。

4

1 に答える 1

0

ADF の runId を教えてください。そこで何が起きているか見てみましょう。ローカル テスト (#1) については、私にとっても奇妙です。そこにぶら下がってはいけません。ところで、パイプラインを再デプロイすると実行がキャンセルされ、新しいプロパティで新しい実行が開始されると思います。:)

于 2017-01-09T10:40:54.370 に答える