當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript AzureAppService.patchApplicationSettings方法代碼示例

本文整理匯總了TypeScript中azure-arm-rest/azure-arm-app-service.AzureAppService.patchApplicationSettings方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript AzureAppService.patchApplicationSettings方法的具體用法?TypeScript AzureAppService.patchApplicationSettings怎麽用?TypeScript AzureAppService.patchApplicationSettings使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在azure-arm-rest/azure-arm-app-service.AzureAppService的用法示例。


在下文中一共展示了AzureAppService.patchApplicationSettings方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: updateAndMonitorAppSettings

    public async updateAndMonitorAppSettings(properties: any): Promise<void> {
        for(var property in properties) {
            if(!!properties[property] && properties[property].value !== undefined) {
                properties[property] = properties[property].value;
            }
        }
        
        console.log(tl.loc('UpdatingAppServiceApplicationSettings', JSON.stringify(properties)));
        await this._appService.patchApplicationSettings(properties);
        var kuduService = await this.getKuduService();
        var noOftimesToIterate: number = 12;
        tl.debug('retrieving values from Kudu service to check if new values are updated');
        while(noOftimesToIterate > 0) {
            var kuduServiceAppSettings = await kuduService.getAppSettings();
            var propertiesChanged: boolean = true;
            for(var property in properties) {
                if(kuduServiceAppSettings[property] != properties[property]) {
                    tl.debug('New properties are not updated in Kudu service :(');
                    propertiesChanged = false;
                    break;
                }
            }

            if(propertiesChanged) {
                tl.debug('New properties are updated in Kudu service.');
                console.log(tl.loc('UpdatedAppServiceApplicationSettings'));
                return;
            }

            noOftimesToIterate -= 1;
            await webClient.sleepFor(10);
        }

        tl.debug('Timing out from app settings check');
    }
開發者ID:Microsoft,項目名稱:vsts-tasks,代碼行數:35,代碼來源:AzureAppServiceUtility.ts

示例2: enableContinuousMonitoring

export async function enableContinuousMonitoring(endpoint: AzureEndpoint, appService: AzureAppService, appInsights: AzureApplicationInsights, testName?: string) {
    try {
        console.log(tl.loc('EnablingContinousMonitoring', appService.getName()));
        var appDetails = await appService.get();
        var appServiceUtils = new AzureAppServiceUtils(appService);
        var appInsightsResource = await appInsights.get();
        var appInsightsWebTests = new ApplicationInsightsWebTests(endpoint, appInsights.getResourceGroupName());
        var webDeployPublishingProfile = await appServiceUtils.getWebDeployPublishingProfile();
        var applicationUrl = webDeployPublishingProfile.destinationAppUrl;
        if(appDetails.kind.indexOf("linux") == -1) {
            var appKuduService: Kudu = await appServiceUtils.getKuduService();
            await appKuduService.installSiteExtension(APPLICATION_INSIGHTS_EXTENSION_NAME);
        }

        appInsightsResource.tags["hidden-link:" + appDetails.id] = "Resource";
        tl.debug('Link app insights with app service via tag');
        await appInsights.update(appInsightsResource);
        tl.debug('Link app service with app insights via instrumentation key');
        await appService.patchApplicationSettings({
            "APPINSIGHTS_INSTRUMENTATIONKEY": appInsightsResource.properties['InstrumentationKey']
        });

        try {
            tl.debug('Enable alwaysOn property for app service.');
            await appService.patchConfiguration({ "properties" :{"alwaysOn": true}});    
        }
        catch(error) {
            tl.warning(error);
        }
        
        try {
            tl.debug('add web test for app service - app insights');
            var appInsightsWebTestsUtils: AzureApplicationInsightsWebTestsUtils = new AzureApplicationInsightsWebTestsUtils(appInsightsWebTests);
            await appInsightsWebTestsUtils.addWebTest(appInsightsResource,applicationUrl, testName);
        }
        catch(error) {
            tl.warning(error);
        }

        console.log(tl.loc("ContinousMonitoringEnabled", appService.getName()));
    }
    catch(error) {
        throw new Error(tl.loc('FailedToEnableContinuousMonitoring', error));
    }
}
開發者ID:Microsoft,項目名稱:vsts-tasks,代碼行數:45,代碼來源:ContinuousMonitoringUtils.ts


注:本文中的azure-arm-rest/azure-arm-app-service.AzureAppService.patchApplicationSettings方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。