Quantcast
Channel: MSDN Blogs
Viewing all 29128 articles
Browse latest View live

Microsoft Teams Configuration Tab: We couldn’t save your tab settings. Please try again.

$
0
0

You can troubleshoot JavaScript in Teams using the web based version of teams via: https://teams.microsoft.com

If you're building a configuration tab and get the following message:

We couldn't save your tab settings.

You can bring up F12 Developer Tools to see what's going on and even debug your JavaScript eg:

Clicking on the configuration.htm you can see I've forgotten to use the SSL ngrok endpoints - which was the cause of this error.  This is a prerequisite referenced here: https://docs.microsoft.com/en-us/microsoftteams/platform/concepts/tabs/tabs-configuration


Important Notes for Field Service and Project Service Automation after upgrade of Dynamics 365 Organizations to version 9.0

$
0
0

After you upgrade Dynamics 365 organizations to Dynamics 365 (online), version 9.0, please also make sure to upgrade the existing Field Service and Project Service Automation solution to the latest and greatest version; this ensures functionalities work as expected and allows you to try out new capabilities introduced in the new release.

To update to the latest Field Service, Project Service solution, visit the Admin Center for Dynamics 365 online, and head to the solutions page to install the update. For details, refer How to Install, Update a Preferred Solution

Known Issues for Field Service v6.2.x on Dynamics 365 9.0 Orgs

Web client

  • Issue with Geocode functionality on workorder/account/contact entities after selecting an address from address suggestor
  • Schedule Board doesn’t auto-refresh when changes are made to a booking; users must select refresh option
  • Issue with creating Quote Service-based/Order Service-based line, as “Save” is not visible on the quick create form
  • Cannot create opportunity line (service-based line)

 

Devices (using Dynamics 365 App from store)

  • No apps will be available when user with FS resource role logs in
  • “Field Resource Hub” app is not available if user with System Administrator security role logs in

 

Known Issues for Project Service Automation v1.2.x on Dynamics 365 9.0 Orgs

Web client

  • User cannot confirm project contract
  • Cannot to add project-based quote line and contract line
  • Cannot create project/project template

 

Known Issues for Field Service v6.0.x on Dynamics 365 9.0 Orgs

Web client

  • Booking details are not available from the “Details” tab

 

Devices (using Field Service app)

  • Intermittent app crashes
  • Intermittent error popup "Arg_NullReferenceException" while creating work order in Windows 10 tablet

 

Devices (using Dynamics 365 App from store)

  • Permissions issue when a user with Field Service resource role logs in
  • No apps will be available when user with System Administrator security role logs in

 

Known Issues for Project Service Automation v1.0.x on Dynamics 365 9.0 Orgs

Web client

  • Cannot confirm project contract
  • Cannot add project-based quote line
  • Cannot create quote from opportunity. similarly, quote cannot be created from opportunity form using “+”
  • Cannot add project-based opportunity line
  • Cannot create booking/task

 

 

For more information:

 

Feifei Qiu

Program Manager

Dynamics 365, Field Project Service Team

 

Learn How To Build A Mixed Cloud Model For SharePoint, And More On This Week’s Friday Five

$
0
0

C# 7.2 : In Parameters 

Jaliya Udagedara is from Sri Lanka and is currently working as a Technical Lead for a software company headquartered in Australia. He's been a Microsoft MVP since January 2014, initially under Visual C# category, then .NET and now under Visual Studio & Development Technologies. He's passionate about everything related to .NET. Jaliya is also a TechNet Wiki Ninja and a blog author at TNWiki Ninja’s official blog. Follow him on Twitter @JaliyaUdagedara.

Quickstart Your D365/NAV Connect API Usage

Tobias Fenster works as the CTO for Axians Infoma, a German ISV building a Dynamics 365 / NAV solution for the public sector. He started as a developer and always kept coding while working in different areas of IT. Recently he helped kick off the Docker initiative for Dynamics NAV and shares his work around Docker, D365/NAV, TFS and other topics on https://navblog.axians-infoma.com. Follow him on Twitter @TobiasFenster.

freek-berson-1

HTML Client For Microsoft Remote Desktop Services 2016

Freek Berson is an Infrastructure specialist at Wortell, a system integrator company based in the Netherlands. Here he focuses on End User Computing and related technologies, mostly on the Microsoft platform. He is also a managing consultant at rdsgurus.com. He maintains his personal blog at themicrosoftplatform.net where he writes articles related to Remote Desktop Services, Azure and other Microsoft technologies. An MVP since 2011, Freek is also an active moderator on TechNet Forum and contributor to Microsoft TechNet Wiki. He speaks at conferences including BriForum, E2EVC and ExpertsLive. Join his RDS Group on Linked-In here. Follow him on Twitter @fberson.  

Building A Mixed Cloud Model For Sharepoint – Part 1

Thuan Nguyen is a Subject Master Expert in Digital Workplace and 7-year Office Services and Servers MVP. With nearly 10 years of experience in Information Technology and Services, Thuan has been involved in a number of successful Microsoft Digital Workplace adoptions for mid-tier and large organizations, including government agencies in which his responsibilities include technical evangelism, pre-sales activities, proof-of-concept mentoring, technical support, to architecting the entire solution. He is a regular guest speaker for several international conferences on SharePoint, Office 365 and Azure. Follow him on Twitter @nnthuan.

Gareth Gruger

Change Which Organizational Units (OUs) Are Synced to Office 365

Gareth Gudger is a Microsoft MVP based in the USA, specializing in Exchange and Office 365. He started his career in 1999 working on Windows NT 4.0 and Exchange 5.5. For most of his career he has worked in a consulting role, primarily delivering Microsoft technologies to businesses. He holds several Microsoft certifications including an MCSE in Messaging, and MCSA in Office 365. Gareth blogs at www.supertekboy.com, a site focusing on Exchange, Office 365 and adjacent technologies. Follow him on Twitter @SuperTekBoy.  

Top stories from the VSTS community – 2018.02.23

$
0
0

Here are top stories we found in our streams this week related to DevOps, VSTS, TFS and other interesting topics.

TOP STORIES

DEVOPS LINKS

TIP: If you want to get your VSTS news in audio form then be sure to subscribe to RadioTFS .

FEEDBACK

What do you think? How could we do this series better?
Here are some ways to connect with us:

  • Add a comment below
  • Use the #VSTS hashtag if you have articles you would like to see included

Risk: You’re Managing it Wrong!

$
0
0

The following post about managing risks in modern software development is from Premier Developer consultant, Assaf Stone.


No offense, but despite your best intentions, you might not be handling risk properly. In this day and age, everything is software-dependent; even if you do not consider yourself a “software-firm” per-se, even if you are just running a small development team that develops in-house software, your business still depends on said software to run smoothly, and any outages cost money. The bigger the problem, the greater the cost. If you, like many other modern software-based organizations, try to reduce risk by taking every precaution to avoid the occurrence of failures, then I am talking to you. If you are (still) following the waterfall methodology (why would you do that???), then I am definitely talking to you.

In this blog post I will explain what is fundamentally wrong with the waterfall way of addressing risk, why you should resist the temptation to avoid failure, and what you should be doing instead, in order to truly reduce risk that is inherent to delivering software.

You can read more on Assaf’s post here.

Cost Optimization on Azure

$
0
0

Cost is always a concern with customers when it comes to the cloud. I've had a number of conversations with customers lately around how they can take advantage of various offers and benefits on Azure to reduce their costs, and I thought I'd share some of them here as well. There are many things you can do to optimize cost, some of which have some caveats and some which may take more effort than others, but this should give you some ideas of things to consider if you'd like a lower Azure bill (and who doesn't love lower bills). Let's take a look through some of the options available, which type of resources they apply to, and how to leverage them in your environment. Because compute costs are typically the largest driver of costs, much of the focus here is on Azure Virtual Machines.

Reserved Instances

We recently announced the general availability of reserved instances on Azure, and this was great to see come to fruition. For VM workloads that are static and predictable in nature, this is a fantastic offer that can save upwards of 70% depending on the VM size. For workloads that are up and running 24x7x365 and are unlikely to change in VM size this certainly an option that should be looked at. Reserved instances are purchased in 1 or 3 year terms, with payment required for the full term up front. Once purchased, we match up the reservation to running instances, and decrement the hours from your reservation. Reservations can be purchased through the Azure Portal and since reserved instances are a compute discount, they are available for both Windows and Linux VMs. For more information take a look at the following documentation.

https://azure.microsoft.com/en-us/pricing/reserved-vm-instances/
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/prepay-reserved-vm-instances

Azure Hybrid Benefit

For customers who have made an investment in Windows Server licenses the Azure Hybrid Benefit gives customers usage rights for Virtual Machines on Azure. When applied to vitrual machines in Azure, you will not be charged for the Windows Server license and will instead be billed at the Linux rate. To be eligible for this benefit, current Windows licenses must be covered by Software Assurance. Each 2-processor license or each set of 16-core licenses are entitled to two instances of up to 8 cores, or one instance of up to 16 cores. The Azure Hybrid Benefit for Standard Edition licenses can only be used once either on-premises or in Azure. Datacenter Edition benefits allow for simultaneous usage both on-premises and in Azure. Most customers are typically licened by core, so you'll use that model for your calculation. If you have questions about what licenses you have, you can reach out to your license reseller or your Microsoft account team to get more information. Applying this benefit is easy, and can be done at deployment time for new VMs and can be enabled or disabled at any time on existing VMs.

We have also announced plans to provide similar capabilities for SQL Server licenses, but have not yet made this fully available. I mention this so that you be on the look out for this availability in the near future.

https://azure.microsoft.com/en-us/pricing/hybrid-benefit/
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/hybrid-use-benefit-licensing

Enterprise Dev/Test or PAYG Dev/Test Subscription

The Enterprise Dev/Test and Pay-As-You-Go Dev/Test offers are a benefit you can take advanatage of to save costs on your non-production environments. This benefit gives you several discounts, most notably for Windows workloads, charging you the Linux rate for virtual machines. This also applies to SQL Server, and any other Microsoft software that is covered under Visual Studio subscription (formerly known as MSDN). There are a few requirements for this benefit, one being that it's only for non-production workloads, and another being that any users of these environments (excluding testers) must be covered under Visual Studio subscription. In short, for non-production workloads, this allows you save money on your Windows, SQL Server and other Microsoft Virtual Machine workloads.

Below are the full details of each offer. If you are a customer on an Enterprise Agreement, you'd leverage the Enterprise Dev/Test offer, and if you a customer without an Enterprise Agreement and are instead using PAYG accounts, you'd leverage the Pay-As-You-Go Dev/Test offer.

https://azure.microsoft.com/en-us/offers/ms-azr-0148p/
https://azure.microsoft.com/en-us/offers/ms-azr-0023p/

SQL Server Developer Edition

As of April 1, 2016, Microsoft has made SQL Server Developer Edition a free product for non-production use. This is yet another way you can save on Azure costs for your non-production environments. On the Azure Marketplace you can find SQL Server 2016 and SQL Server 2017 images for Developer Edition, which will eliminate the additional cost for SQL Server, and for previevious version you can provision a new Windows VM and download SQL Server Developer Edition from your Visual Studio Subscriber Downloads, provided you have a Visual Studio subscription. For full licensing infomration, take a look at the following links. Bottom line, for non-production workloads that use SQL Server you should look closely at taking advantage of this offer. One side note, there is no way to convert an existing SQL Server VM to another license type, you'll have to provision a new VM and migrate your databases to the new server.

https://www.microsoft.com/en-us/sql-server/sql-server-2017-pricing
https://download.microsoft.com/download/7/8/C/78CDF005-97C1-4129-926B-CE4A6FE92CF5/SQL_Server_2017_Licensing_guide.pdf
https://download.microsoft.com/download/B/C/0/BC0B2EA7-D99D-42FB-9439-2C56880CAFF4/SQL_Server_2017_Licensing_Datasheet.pdf

BYOL SQL Server Licenses

If you are a customer on an Enterprise Agreement and already have an investment in SQL Server licenses and they have freed up as part of moving resources to Azure, you can provision BYOL images off the Azure Marketplace, giving you the ability to take advantage of these unused licenses and reduce your Azure VM cost. You've always been able to do this by provisioning a Windows VM and manually installing SQL Server, but this simplifies the creation process by leveraging Microsoft certified images. Take a look at the following blog post from the initial announcement, and you'll find these marketplace images available for you today to take advantage of.

https://azure.microsoft.com/en-us/blog/easily-bring-your-sql-server-licenses-to-azure-vms/

Azure Cost Management (Cloudyn)

Last year Microsoft purchased Cloudyn and has since rebranded it Azure Cost Management. This is a free service that will anaylyze your Azure workloads and provide recommendations, such as right-sizing VMs and purchasing reserved instances. There's a whole host of features that give you the ability to evaluate, report and budget your Azure costs, so it's a great tool to take a look at to get an idea of where your money is going. For Azure services there is no charge for the service itself, and there is a paid tier if you need support and integration with other cloud providers. Definitely get this set up and leverage it to analyze your spend. Take a look at the following documentation for more details.

https://azure.microsoft.com/en-us/services/cost-management/
https://docs.microsoft.com/en-us/azure/cost-management/overview

Azure Advisor

Along with Azure Cost Management, Azure Advisor is another service to take a look at to identify areas of inefficiency. Azure Advisor evaluates your environment and provides recommendations on high availability, security, performance and cost. It's a good idea to pay attention to the recommendations as a whole, but specific to cost it will make recommendations around resizing or shutting down unused VMs, identifying where you might be able to take advantage of Azure SQL Elastic Pools, and unutilized ExpressRoute circuits that may be costing you money. Azure Cost Management will give you more details on your compute, but it's still a good practice to check Advisor regularly for all the recommendations it provides.

https://azure.microsoft.com/en-us/services/advisor/
https://docs.microsoft.com/en-us/azure/advisor/advisor-overview

Right-Size/Shut Down/Deallocate VMs

One of the things that Cost Management and Advisor may recommend is right-sizing or shutting down VMs. Changing VM size is easy on Azure, and if you have VMs that typically sit idle, this is a great way you can reduce your costs. Shutting down unused systems is important as well, as often times VMs are created for a test environment or a project that maybe never took off, but nobody went back and cleaned up the environment afterwards. Identifying these systems is important, as they drive up your bill unnecessarily. It's also important to take a look at the usage patterns of your systems. If you have systems that are primarily used during business hours (or another regular time period) you should evaluate if you can shut them down when they are not being used. I've had customers succefully use Azure Automation to run scripts that will stop/start VMs on a schedule. Below are a couple examples of this (both of which are avialble in Azure Automatin), you can use these scripts or modify them as appropriate. Bottom line, it's important to evauluate the size, usage and usage patterns of your VMs to ensure they are as cost effective as possible.

https://gallery.technet.microsoft.com/scriptcenter/Scheduled-Virtual-Machine-2162ac63
https://gallery.technet.microsoft.com/scriptcenter/ShutdownStart-VMs-by-tag-3f1e9afd

Use Visual Studio Subscrption (MSDN) Keys

If you have a Visual Studio subscription (formerly known as MSDN) you do have the ability to use the license keys on Azure Virtual Machines. There are some limitations to this, they can't be used on production systems, other users of these systems must also be covered under the appropriate VS license, and you can't use this benefit for the Windows Server or Windows client VM licenses, but for things like SQL Server this could be another way to reduce your VM costs. You could provision a BYOL image, enter a key from your VS subscription and eliminate the costs for SQL Server for that VM. Take a look through the following documentation for the specific requirements and limitations.

https://azure.microsoft.com/en-us/pricing/licensing-faq/ (the last FAQ has details on this licensing)
https://www.visualstudio.com/wp-content/uploads/2017/03/Visual-Studio-2017-Licensing-Whitepaper-March-2017.pdf (page 14 specifically has more details)

Migrate to PaaS Services

Lastly, as you move workloads to the cloud, a natural evolution is to start with IaaS services and them move them to PaaS as appropriate, and in an iterative process. PaaS services typically provide a substantial savings in both resource and operational costs. The challenge is that, depending on the type of service, varying levels of effort will be required to move to these servcies from both a time and resource perspective. You may be able to easily move a SQL Server databse to Azure SQL DB, but it may take substantially more effort to move your multi-tier application to a container or serverless based architecture. It's a good practice to continuously evaluate the architecture of your applications to determine if there are efficiences to be gained through PaaS services. Azure makes it easy to test these out with little risk, giving you the ability to try out new architecture patterns relatively easily. That said, it's typically a longer journey and may not be of immediate help if you're looking for quick wins from a cost savings perspective. The Azure Architecture Center is a great place to get ideas for transforming your application, as well as best practices across a wide array of architectures and Azure services.

https://docs.microsoft.com/en-us/azure/architecture/

Wrap Up

Customers are always looking at how they can shave costs across their IT environments, and as I've detailed here, there's numerous ways you can drive lower costs throughout your Azure environments. There is no one-size-fits-all solution, so you'll need to evaluate your environments and leverage the capabilities that fit. Some are going to provide more benefit than others, and there may be some work to realign resources to take advantage of these, but they're definitely worth looking into further.

Importing a .dbf (dBase) file into Power BI

$
0
0

How can I import data from a .dbf (dBase) file into Power BI?

Today’s Power BI Mailbag Question comes from a friend who often works with geospatial data and, as a result, ends up with several different shapefile formats, including .dbf (dBase) database table files. There are several blog articles around shapefile mapping options in Power BI, but this question of accessing the .dbf file directly from Power BI was something I hadn’t been asked before.

Note: Power BI does not have native .dbf file support at the time of publishing this article, but the idea has been proposed at ideas.powerbi.com if you would like to vote for it. 

When I began searching for a solution, I found several threads in the .NET provider MSDN forum showing how to leverage the Access OLEDB provider (Microsoft.ACE.OLEDB.12.0) to import data from a .dbf file into SQL Server. With this, we can use a similar solution in Power BI. 

Data Source (Rainfall in Ethiopia):
For this example, I’m using a
.dbf file containing the rain statistics in towns in Ethiopia
from worldbank.org.

Steps:
In Power BI Desktop, click on Get Data -> Blank Query

Click on the Advanced Editor and replace the default text with the following text (replacing with your path and dBase file name):

let
    Source = OleDb.DataSource("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:BlogDBF;extended properties=dBASE IV", [Query="select * from [rain.dbf]"])
in
    Source

 

Power BI Advanced Query Editor

 

This will prompt you to edit the credentials. Click "Edit Permissions" to continue.

 

Edit Credentials Dialog in Power BI

 

Another prompt appears asking to approve of running the native query against this data source. Since the OLEDB provider syntax we provided contains the query string, you need to approve that this can be executed against the .dbf file. Click Run to continue.

 

Native Database Query dialog in Power BI

 

You may get one additional dialog box requesting proper credentials as I did with some other data sources I used in testing this solution. I selected the “Default or Custom” option with no value supplied in the connection string property dialog. 

 

Default or custom credentials dialog in Power BI

 

With this, the data will be loaded into Power BI and you can continue with your report creation.

 

dbf file loaded in Power BI

 

Rain fall in Ethiopia in Power BI 

 

Special thanks to Aaron Bator for constantly pushing the edges of Power BI and bringing new and innovative ideas and questions. Keep them coming!

Thanks,
Sam Lester (MSFT)

EDGE Extension and Microsoft’s open-source SONAR tool

$
0
0

Abstract :

EDGE Extension:  Quick intro into the world of extensions. What is the need of extensions? Simple demo using the extension API’s and the roadmap of extension API’s for Edge browser.

Microsoft’s open-source SONAR tool: What is this tool all about, demo on how to use it as a command line utility. How to customize the rules to get results efficiently while scanning for the compatibility issues with the websites.

Webinar Date & Time:  March 9th 2018, 10 AM GMT

Invite:
Download the Calendar Invite


Speaker Bio:

Apoorva Kakhandiki is part of Developer Tools and works as a Support Engineer. Her day to day work mostly relates with Internet Explorer and Edge browsers’ space. She is a dual skilled engineer with development and configuration expertise. She works directly with the customers helping them resolve application compatibility issues within the boundaries of the browsers. She has also  helped the team with developing Case Title Generator tool to manage the cases.


Browsers: Proxy Configurations, Scripting and troubleshooting them using different tools

$
0
0

Abstract :

This is a Proxy oriented session, that starts with introduction to proxy servers. We will discuss about various configurations of proxy with reference to the browsers IE11 and Microsoft Edge. Focus would be mainly on tools such as "Winhttpdiag", "AutoProx" and "PAC-DBG", which helps us understand proxy set up and aid in troubleshooting. Thereby, simplifying the approach while handling issues with respect to Proxies.

Webinar Date & Time:  March 7th 2018, 8 AM GMT

Invite:
Download the Calendar Invite

Speaker Bio:

Preethi Shekar currently works as a Support Engineer at Microsoft India GTSC. Her day to day role is to empower peers and customers to achieve more. Her role creates an opportunity to master the basics of various technical concepts. Being in a customer facing role, she partners with product groups and collaborates with divergent teams. Her focus areas are browser architecture, group policies, windows networking and technical concepts relating to Internet Explorer and Microsoft Edge.

Say Hi to Process Monitor, Process Explorer and Fiddler!

$
0
0

Abstract :

This session would shed some light on the tools which are used by our Support Engineers on daily basis. It has always been a mystery that what exactly an application or a process is trying to access on the machine. Even if we know, there comes a question again, what tools should we run to see what is the deviation? So, wouldn’t it be amazing if we can see, visualize and record the system and application activities and see what they are doing in the background? Let’s see them in action with this small session and then you can explore and play around with these super interesting utilities.

Webinar Date & Time:  March 6th 2018, 10 AM GMT

Invite:
Download the Calendar Invite

Speaker Bio:

Rajdeep Saxena is part of Developer Tools and work as Support Engineer. Most of the work he does on daily basis revolves around Internet Explorer and Edge. He collaborates proficiently with the different specialties and Product Group to deliver resolution to customers. The kind of role he is in provides him to work on different technologies and tools. Rajdeep is a keen learner and tries to learn and spread awareness about different tools within and across the teams.

Diagnosing common memory leak patterns in the browser

$
0
0

Abstract :

This is a memory leak oriented session for Internet explorer and Edge browsers. In this session, we will discuss on various examples to identify the memory leak patterns and how do we resolve them. We will see how to analyze the memory leak using f12 memory profiler and Windows performance analyzer (WPA). This session is aimed to help the developers to detect and resolve the memory leaks in their web applications.

Webinar Date & Time:  March 12th 2018, 10 AM GMT

Invite:
Download the Calendar Invite

Speaker Bio:

Prabhu Itagi is part of Developer Browser SDK and works as a Support Engineer in Microsoft. His supports work related to Microsoft Edge and Internet Explorer space. His expertise stands on development related issues and helping the customers with regard to application performance and memory leaks. He love to debug the customers complex issues. He has shown great passion in sharing the learning with the customers and colleagues.

 

SSL Cert Renewal Issues Solved On Azure Service Bus and Relay

$
0
0

To our Azure Relay and Azure Service Bus customers,

Some of you might have seen the below error whenever the Relay and Service Bus service updated its SSL certificate chain.

Unhandled Exception: System.IdentityModel.Tokens.SecurityTokenValidationException: The X.509 certificate CN=servicebus.windows.net is not in the trusted people store. The X.509 certificate CN=servicebus.windows.net chain building failed. The certificate that was used has a trust chain that cannot be verified. Replace the certificate or change the certificateValidationMode. A certificate chain could not be built to a trusted root authority.

What this meant was that you could not obtain the intermediate certificate either because you were in a restrictive environment where access to the intermediate cert URL was blocked or you had some connectivity issues.

We have good news though! We have a fix in Nuget package 4.1.7 which resolves the issue for Relay and Service Bus.

We hope you continue to update to the latest packages as this is a great way to avoid issues from cert changes in the future.

Happy Messaging!

--Relay Out--

 

Use Azure Policy to help enforce compliance standards for your Azure deployments

$
0
0

Scenario:

You need to allow researchers the flexibility to create storage accounts in Azure but you want to ensure they're using security best practices.  Specifically, you would like to require that secure transfer (HTTPS) be required as they transfer data in & out over the network as well as Server Side Encryption (SSE) be enforced to ensure compliance with encryption at rest requirements.

Components:

Azure Policy is a service in Azure that allows you to create, assign and manage policy definitions against Azure Resource Manager (ARM) resources.  Azure Policy can be used to ensure you stay compliant with your standards and service level agreements.  Policy Definitions can be assigned to subscription level scopes as well as resource group level scopes.  These can be combined together into Policy Initiatives that help meet a compliance standard you would like to enforce.

Solution:

Use built-in and custom Azure Policy definitions to enforce the required practices for any newly created storage accounts in a resource group.

 

In this scenario, I'm going to create a resource group to ensure that my policy assignments don't have unintended consequences - after all a subscription can be a pretty broad scope and I don't want to impact other admins or resources!  Despite my tendency to be verbose (ask my peers!), I prefer Azure CLI because of its compactness, so that's what I'll use here.

az group create --name policydemo --location EastUS2

We've got a resource group created, now let's validate that we can create a storage account in that resource group without the options that would meet our security requirements (seed the name with some numbers of your own to ensure uniqueness):

az storage account create --name notcompliant3432 --resource-group policydemo --location EastUS

Not ideal - we've confirmed we can create a storage account without any concern for our institution's best practices.  Let's use Azure Policy to fix that!  We'll move over to the portal and take a look at the available policy definitions to see if any might be useful for our scenario.  Click All services in the upper left corner of the portal and scroll on down to the Monitoring + Management section where you'll find Policy:

You'll land at the overview, which will be pretty empty if this is your first foray into Azure Policy.  I'll leave it to the documentation to expand on the various options and elements available, but let's focus on the task at hand.  Look for the Authoring section and click on Assignments:

Let's assign a policy by clicking Assign Policy on the right side of the Policy blade.  This opens up a new blade where we have to select which policy we'd like to apply.  Click the ellipses next to the policy field to see the options.  Scroll down a bit through the available policies and you'll see a built-in policy which looks like it'll address one of our concerns "Require blob encryption for storage accounts":

Let's select that policy and change the tier to Free since we don't need to enforce against existing resources, just newly created ones.  We are forced to specify a scope and it's important to specify both a subscription and a resource group (though resource group is optional) for this exercise as we're learning and don't want to disrupt other deployments as mentioned earlier:

OK, so that takes care of the encryption at rest requirement, but at the time of this blog post, there isn't a built-in policy available to address the secure transport requirement.  Luckily, an example with deployment template is in the documentation here.  Let's deploy that into our subscription so that it appears as a custom policy in our list.  Now we can assign this "require HTTPS traffic only" for blob storage accounts policy:

Now, we'll set the scope and pricing tier as we did with the first policy.  If everything went as planned, we have a pair of policies assigned and scoped to a resource group within your subscription that requires any new storage account to have both encryption at rest and https traffic only enabled. If not the deployment will fail.  Let's test it!

First, we'll try the Azure CLI command we used prior to assigning the policies - remember to change the storage account name.  Last time it deployed a storage account, this time - Doh!

az storage account create --name notcompliant3433 --resource-group policydemo --location EastUS
Resource 'notcompliant3433' was disallowed by policy. Policy identifiers: '[{"policyDefinitionId":"/subscriptions/58556be9-bff6-4b73-98b3-0e064b38ff54/providers/Microsoft.Authorization/policyDefinitions/deacdafe-4560-40a5-8eb7-1fdcadb2601b","policyAssignmentId":"/subscriptions/58556be9-bff6-4b73-98b3-0e064b38ff54/resourceGroups/PolicyDemo/providers/Microsoft.Authorization/policyAssignments/e176a7e03ff44dedb3bb5202"},{"policyDefinitionId":"/providers/Microsoft.Authorization/policyDefinitions/7c5a74bf-ae94-4a74-8fcf-644d1e0e6e6f","policyAssignmentId":"/subscriptions/58556be9-bff6-4b73-98b3-0e064b38ff54/resourceGroups/PolicyDemo/providers/Microsoft.Authorization/policyAssignments/e5fe344d694c4a589a53a40e"}]'.

 

Excellent!  Even users with fully authorized RBAC roles cannot create non-compliant storage accounts in this resource group.  But what about the folks that do care about security and did read the guidance I sent them?  Let's try again, this time specifying https-only and encryption-services options and see what happens . . .

az storage account create --name compliant3433 --resource-group policydemo --location EastUS2 --https-only true --encryption-services blob

Success!  Now you can go back and check for other interesting policy templates like "Allowed Locations" because a researcher may accidentally deploy a resource in Brazil South region, but that may not meet the research grant's data location requirements.  The documentation does a great job of explaining the differences between RBAC and Azure Policy and offers several examples as well.  My hope is that you'll feel more empowered to allow your customers the flexibility to deploy resources in Azure while maintaining your institution's compliance and governance requirements.

How not to write Xamarin UI Test !

$
0
0

Here in this blog, i will discuss about the experience that i had while using Xamarin UI Test for iOS apps.

What is Xamarin UI Test?

Xamarin UI Test is an automation framework based on Calabash, C# and NUnit. This can be used to automate mobile applications like iOS/Android.

Why?

For an engineer who is comfortable with C#, this is the best framework that can be used to automate the mobile apps developed on hybrid/native apps.

How?

You can go through this link to know more about Xamarin UI Test.

Tips & Tricks!

  1. What if your app contains multiple pages!  You can definitely use a page object pattern framework which comes along with the nuget Package. You can find the sample here.
  2. Thread.Sleep! Undoubtedly Polling is bad. Xamarin UI Test gives us many methods to stop polling. Here is a sample where the app waits until the button is enabled:
 app.WaitFor(() => app.Query(e => e.Class("UIButton").Index(1)).First().Enabled, "Waiting for Element", timeout: TimeSpan.FromMinutes(3.0)); 
 

      3. Code without Assertions ?? Never! You can use the same assertions that you use for Nunit. Like Assert, StringAssert,FileAssert, CollectionAssert.

      4. How to Identify Elements like datepicker? You can use invoke method on the element

app.Query (x => x.Class ("UIPickerView").Invoke ("selectRow", date.Month - 1 , "inComponent", 0, "animated", true));

      5. How to add test case category ?? Yes, you can! Why would someone add a test category? It not only helps in identifying the test case no. but also when you have a CI pipeline, you can categorize the test methods to run specific tests.

[Category("Test Category Name")]

     6. How to start writing the test? Always open the repl mode and use app.flash to identify the element. After you play with the repl mode, Just type "copy" and paste it in your test method. Remove the unwanted code. "Tree" keyword is used to identify the structure of elements in the UI. And the repl mode is really interactive and supports intellisense.

    7. I am not able to find elements in repl ! If you are trying to use class, sometimes it hardly gives any result.. so try classful ! And there are many implicit methods which works efficiently to capture the element.

8. Can i check the app's memory leak issues? Yes ! you can use backdoor methods in the app to trace the managed and unmanaged memory. For a long running test, this is much helpful. Alternatively you can use Xamarin Profiler too.

9. Automate a webview inside a native app? Some apps use web based login to authenticate the user. We still have the provision to use Webview() to automate those functionalities. It supports Xpath too !

10. I need to create more data and use assertion. Can i use data driven test ? Yes definitely, CSV or Xml or JSon.

11. I want to run my UI Test in my device along with my regular builds. Is it possible ? Yes we can use cake addins to perform CI integration. Alternatively you can use app center to have e2e mobile app dev/test/deploy.

Common Troubleshooting with iOS apps

  1. Unable to contact test backend running in app. A common cause is that the app is not properly linked - You need to check the Xamarin.TestCloud.Agent (to be latest based on the Xcode) or Xamarin.Calabash component is missing from the appdelegate.cs.
  2. I upgraded all the packages but my test is not running ! You should use NUnit Version below 3.0.0, ideally to use 2.6.4 unless there is any update. Sometimes Xamarin UI Tests doesn't work well with iOS upgrades. So wait for sometime until the Xcode/Xamarin support is provided.
  3. I am not able to deploy the device agent. Check the version of Xamarin.TestCloud.Agent, Xamarin.UITest. If there was an iOS update, the Xcode needs to be updated (if not available use the preview version).
  4. System.Net.Http.HttpRequestException - Sometimes you get this error in repl mode. Try reconnecting the device and run the repl again.
  5.  Not able to see the tests. This is a common issue which we observe in visual studio for mac. You can rebuild the solution, Quit Visual Studio (Command+Q) and then re-open to view the tests.

Please feel free to post any queries below !

Experiencing Data Access Issue in Azure and OMS portal for workspace data – 02/20 – Mitigating

$
0
0
Update: Saturday, 24 February 2018 04:05 UTC

We continue to wait for impacted customers to get mitigated as hot-fix deployment is successfully completed for all the locations. We recommend customers to install Guest Agent (version - 2.7.41491.872) updates on VM or reboot VM who noticed their work space data missing. Regret for any inconvenience caused.
  • Work Around: Rebooting the impacted VM should help in mitigating the issue
  • Next Update: Before 02/25 04:30 UTC

-Praveen


Update: Friday, 23 February 2018 01:28 UTC

Hot-fix deployment is successfully completed for all the locations. We recommend customers to install Guest Agent (version - 2.7.41491.872) updates on VM or reboot VM who noticed their work space data missing. Regret for any inconvenience caused.
  • Work Around: Rebooting the impacted VM should help in mitigating the issue
  • Next Update: Before 02/24 01:30 UTC

-Praveen


Update: Thursday, 22 February 2018 01:14 UTC

Hot-fix deployment is completed for one of the locations. ETA for all location still remains same as 02/26. We will keep this blog updated as per the progress. Customers who are seeing their work space data missing are recommended to look for Guest Agent (version - 2.7.41491.872) updates on VM and install updates or Reboot VM to mitigate the issue. 
  • Work Around: Rebooting the impacted VM should help in mitigating the issue
  • Next Update: Before 02/23 01:30 UTC

-Praveen


Update: Wednesday, 21 February 2018 00:15 UTC

We identified issue was due to compatibility issue with VM's running on 2.7.41491.869 and Microsoft Monitoring Agent (MMA) version 1.0.11081.3. As a resolution we have started hot-fix deployment in pre-production environment. As this issue surfaced in multiple locations so our estimated date to complete this deployment in all locations is 2/26. Customers who are seeing their work space data missing are recommended to look for Guest Agent (version - 2.7.41491.872) updates on VM and install updates or Reboot VM to mitigate the issue. 
  • Work Around: Rebooting the impacted VM should help in mitigating the issue
  • Next Update: Before 02/22 00:30 UTC

-Praveen


Update: Tuesday, 20 February 2018 11:43 UTC

We continue to investigate issues within Azure Log Analytics service. We have identified an issue with latest monitoring agent upgrade which is causing our system to not process the data as expected. Customers using Microsoft
Monitoring Agent (MMA) extension to connect Azure Virtual Machines (VMs) to Log
Analytics who may experience the MMA extension stuck in error or transitioning
state in either the Azure Portal or the OMS Portal. On-premises VMs
which have the MMA extension installed are not impacted.
 The initial findings indicate that the problem began at 02/15 19:30 UTC. We currently have no estimate for resolution. 
  • Work Around: Rebooting the impacted VM will help in mitigating the issue
  • Next Update: Before 02/21 00:00 UTC

-Mohini Nikam


Update: Tuesday, 20 February 2018 05:31 UTC

We continue to investigate issues within Azure Log Analytics service. We have identified an issue with latest monitoring agent upgrade which is causing our system to not process the data as expected. Some customers continue to experience issues while accessing workspace data in Azure portal as well as in OMS portal. The initial findings indicate that the problem began at 02/15 19:30 UTC. We currently have no estimate for resolution. 
  • Work Around: Rebooting the impacted VM should help in mitigating the issue
  • Next Update: Before 02/20 10:00 UTC

We are working hard to resolve this issue and apologise for any inconvenience.

-Mohini Nikam


Initial Update: Tuesday, 20 February 2018 01:29 UTC

We are aware of issues within Azure Log Analytics services and are actively investigating. We have identified an issue with latest monitoring agent upgrade which is causing our system to not to process the data as expected. Some customers may experience issues while accessing workspace data in Azure portal as well as in OMS portal. We provide more updates as we learn about fixing the issue though we have workaround (reboot of VM) to mitigate this problem.
  • Work Around: Rebooting of impacted VM should help in mitigating the issue
  • Next Update: Before 02/20 05:30 UTC

We are working hard to resolve this issue and apologize for any inconvenience.
-Praveen


用 WMI 查詢一個服務是否執行, 若不是把它執行

$
0
0

以 SQL Server Agent 為例, 服務名稱可以自行替換

Option Explicit
Dim objWMIService, objService, strComputer,strService
strService="SQLSERVERAGENT"
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\" & strComputer & "rootcimv2")
For Each objService In objWMIService.ExecQuery("Select * from Win32_Service Where Name = '"_
&strService&"'")
If objService.State <> "Running" Then
objService.StartService
End If
Next
WScript.Quit

 

Enjoy. Jacky

Visual Studio Code C/C++ 扩展2018年1月更新

$
0
0

[原文发表地址] Visual Studio Code C/C++ extension Jan 2018 update

[原文发表时间] 2018/1/17

&amp;amp;amp;lt;iframe src="//www.googletagmanager.com/ns.html?id=GTM-PLR87W" height="0" width="0" style="display:none;visibility:hidden"&amp;amp;amp;gt;&amp;amp;amp;lt;/iframe&amp;amp;amp;gt;

 

Visual Studio Code CC++ 扩展2018年2月更新

$
0
0

[原文发表地址] Visual Studio Code C/C++ extension Feb 2018 update

[原文发表时间] 2018/2/20

 

非活动区域的着色

在编辑器中,由条件编译指令(如#if#ifdef)控制的不活动代码区域现在变为灰色。

加入内部计划

如果你一直在使用或者有兴趣使用Visual Studio CodeC/C++扩展,并希望尽早访问最新功能和错误修复,请使用以下链接加入内部计划:

https://aka.ms/vcvscodeinsiders

通过加入内部计划,你将获得:

  • 尽早访问内部版本,其中包括最新功能和错误修复。
  • 有直接向开发团队反馈的渠道来影响扩展的未来功能。

告诉我们你的想法

下载Visual Studio CodeC / C ++扩展,试用它,让我们知道你的想法。GitHub上提出问题和建议。如果你尚未向我们提供反馈意见,请参阅此快速调查以帮助你制定符合你需求的扩展程序。你也可以在Twitter上找到我们(@VisualC)。

Another Windows 10 version overview

$
0
0

This overview combines information from different TechNet/Blog/Support pages to have the most interesting values in one table. I will maintain this page from time to time. However, it could happen that some values are outdated. If so, please leave a comment and I will update the table.

Note, that dates are specified in German notation (dd.mm.yyyy).

Version Code Name Initial Build Channel Switch Current Channel Release Channel Switch End of Support Payed Support
1507 Threshold 10240.16405
N/A
CBB 29.07.2015
N/A
09.05.2017
N/A
1511 Threshold 2 10586.3 10586.164 CBB 10.11.2015 08.03.2016 10.04.2018 available
1607 Redstone 14393.10 14393.447 CBB 02.08.2016 08.11.2016 09.10.2018 available
1703 Redstone 2 15063.138 15063.483 SAC 05.04.2017 11.07.2017 09.04.2019 available
1709 Redstone 3 16299.19 16299.125 SAC 17.10.2017 12.12.2017 08.10.2019 available
1803 Redstone 4 17107.1000
N/A
Preview
N/A
N/A
N/A
N/A
1507 LTSB Threshold 10240.16405
N/A
LTSB 29.07.2015
N/A
13.10.2020 14.10.2025
1607 LTSB Redstone 14393.10
N/A
LTSB 02.08.2016
N/A
12.10.2021 13.10.2026
1809 LTSC Redstone 4
N/A
N/A
N/A
Fall 2018
N/A
N/A
N/A


Most columns don't need to be explained. The Channel Switch column, which appears twice, specifies the version and the date of the CBB/SAC declaration for each release. Further information on servicing channels can be found here.

Always check the last modified date.

For further information on the values mentioned in the table, please visit following sites:
Windows 10 release information
Windows lifecycle fact sheet
Windows 10 Insider previews
Windows 10 servicing extensions


Last modified on February 24, 2018

Using VSTS Service Hooks in Release Management to add resource cleanup resilience

$
0
0

In this post, Principal Consutant/App Dev Manager Lou Sawyer describes how to integrate webhooks and runbooks to cleanup failed Azure deployments.


Release Management capabilities in Visual Studio Team Service are fantastic and offers extensibility points to make everyone's life easier. In this post, we'll be discussing the Service Hooks feature along with a potential use case integrating with a Runbook.

As detailed in Integrate with service hooks, Service Hooks allow you to perform tasks in other services in response to events in VSTS. This capability can be used to start a runbook from a webhook (runbooks and use cases are covered in Azure Automation User Documentation) to perform conditional tasks after a VSTS Release.

One common use of Release Deployments is to perform testing that can involve a significant number of resources in Azure to complete. By default, when a deployment fails in VSTS, it stops the deployment at that time and does not continue in order to give you a chance to investigate the failure.  This can lead to resources continuing to be available longer than needed adding cost to the environment. The option does exist to configure to continue on error, however this is not conditional and may result in more task failure (or the environment being deleted when you would want to investigate). In such a scenario, use a webhook to starts a runbook on deployment failure to examine which task failed and clean-up the environment.

Consider the image shown below, in this case there are intermittent failures and this release creates resources in a resource group in Azure. Depending on when it fails, these resources may result in unwanted overhead.

clip_image002

clip_image004

To mitigate this scenario, consider using a runbook. The image below shows a PowerShell Workflow runbook being created to handle a failed release event

clip_image006

The workflow needs to take one parameter named webhookData which will contain the body of the post request from VSTS.  The request body of webhookData then needs to be deserialized so we can examine the release details.  In the code below, we are walking through the environment deployment phase tasks to find the first task where we know the resourceGroupName and location are used as parameters.  We can use these values to test if the resourceGroupName exists at the specified location and remove it; a more elaborate script would iterate through all the tasks to find where it failed and then decide to remove the resource group or not.

clip_image008

The next step is to create a webhook for the runbook. This is covered fairly well in Starting an Azure Automation runbook with a webhook. As a word of caution, the URL for the webhook cannot be retrieved after creation, so save it before you click Create!

clip_image010

clip_image012

clip_image014

clip_image016

clip_image018

At this point, we need to create the Service Hook in VSTS. This can be done from a Service Hooks settings as shown below

clip_image020

From the Service Hooks pane, you have the option to create a subscription, choose it to create a Service hook.

clip_image022

There are lots of services you can send events to, in this case we are interested in Web hooks; this topic is covered in VSTS documentation on Web Hooks.

clip_image024

The trigger options can be narrowed to a specific release, environment, and status.  In this case, we are interested in failed deployments to UAT for TailSpin Toys as shown below.

clip_image026

The next window allows you to paste the URI generated when you created the webhook for your runbook automation.  There are a lot of options for message detail and it’s important to note that the highest level of detail (All) is the default. This option contains a lot of information about your release so it's important to use secure connections.  In this case, we need the full release details to pull out specific information from the tasks and any conditional work we want to do.

clip_image028

Finally, the service hook is done and the runbook is ready.  The next time a deployment fails, you should see an output in your runbook jobs like the screen below. As the snapshot shows, the failed deployment resource groups were found and removed.

clip_image030

There is a lot of power and flexibility in the Service Hooks feature in VSTS.  Hopefully this gives some additional ideas on how to do conditional processing on a release that needs attention.



Premier Support for Developers provides strategic technology guidance, critical support coverage, and a range of essential services to help teams optimize development lifecycles and improve software quality.  Contact your Application Development Manager (ADM) or email us to learn more about what we can do for you.

Viewing all 29128 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>