コード例 #1
0
        public static void Run([TimerTrigger("0 */5 * * * *")] TimerInfo myTimer, TraceWriter log)
        {
            log.Info($"C# Timer trigger function executing at: {DateTime.Now}");

            FtpCredentials ftpCredentials = new FtpCredentials()
            {
                Hostname    = ConfigurationManager.AppSettings["FtpHostname"],
                InboundDir  = ConfigurationManager.AppSettings["FtpInboundDir"],
                OutboundDir = ConfigurationManager.AppSettings["FtpOutboundDir"],
                Password    = ConfigurationManager.AppSettings["FtpPassword"],
                Username    = ConfigurationManager.AppSettings["FtpUsername"],
                Key         = ConfigurationManager.AppSettings["FtpKey"]
            };
            string             accountName        = ConfigurationManager.AppSettings["StorageAccountName"];
            string             accountKey         = ConfigurationManager.AppSettings["StorageAccountKey"];
            string             blobContainerName  = ConfigurationManager.AppSettings["BlobContainerName"];
            StorageCredentials storageCredentials = new StorageCredentials(accountName, accountKey);

            OmsCredentials omsCredentials = new OmsCredentials()
            {
                WorkspaceId = ConfigurationManager.AppSettings["OmsWorkspaceId"],
                SharedKey   = ConfigurationManager.AppSettings["OmsLogAnalyticsSharedKey"]
            };

            ILog omsLogger = new OmsLogger(omsCredentials);

            ;
            BlobFtpAgent  theAgent = new RebexFtpAgent(ftpCredentials, storageCredentials, omsLogger);
            List <String> fnames   = theAgent.GetFileNames();

            if (fnames.Count == 0)
            {
                log.Info("No files found");
            }
            else
            {
                foreach (string fname in fnames)
                {
                    log.Info("Transfering Inbound File: " + fname);
                    var logEntry = theAgent.Get(fname, blobContainerName);
                    if (logEntry != null)
                    {
                        if (logEntry.Result.Equals("Success"))
                        {
                            log.Info(fname + " Transferred");
                        }
                        else
                        {
                            log.Info("Failed to Transfer File " + fname);
                        }
                    }
                }
            }
        }
コード例 #2
0
ファイル: TestFtp.cs プロジェクト: azuregomez/AFBlobSave
        public static void Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequestMessage req, TraceWriter log)
        {
            log.Info("C# HTTP trigger function processed a request.");

            FtpCredentials ftpCredentials = new FtpCredentials()
            {
                Hostname    = ConfigurationManager.AppSettings["FtpHostname"],
                InboundDir  = ConfigurationManager.AppSettings["FtpInboundDir"],
                OutboundDir = ConfigurationManager.AppSettings["FtpOutboundDir"],
                Password    = ConfigurationManager.AppSettings["FtpPassword"],
                Username    = ConfigurationManager.AppSettings["FtpUsername"],
                Key         = ConfigurationManager.AppSettings["FtpKey"]
            };
            BlobFtpAgent theAgent = new RebexFtpAgent(ftpCredentials, null, null);

            req.CreateResponse(HttpStatusCode.OK, "Hello ");
        }