Understanding and building an effective success plan for customers

This is my first post for a while, so forgive my absence. I have changed roles, moving away from previous technical positions to which I posted frequently. I will try to start blogging on my newest career field, to which honestly, I am a relative noob for all intensive purposes when it comes to customer success. Nonetheless each day I’m learning and want to start posting my journey, to share my thoughts and experiences. And my manager thought this would be a good idea too!

In this post, I will discuss some of the key questions that will help understand and build an effective success plan for customers.

Each customer desired outcome for their purchase is going to differ, so success will mean different things to separate customers. A Success Plan remains a vital piece in the customer journey, as it helps create a map to the desired outcome.

A success plan should provide a statement of Why did the customer buy? What can it do? How will they use? What does success look to the customer and when will they see it? How will the client measure success, what does ROI look like? I will explain later why I have highlighted the last two items.

Let’s take a fictitious example of Acme Insurance, their desired outcomes are to pursue a cloud-first strategy, have paperless offices and to embrace digital signatures as a means to signing documents. They choose Citrix ShareFile + RightSignature a seamless file-sharing and e-signature solution to meet their needs ;-). I will map the questions and answers in the below table.

table1

So let’s go back to points I highlighted early “How will the client measure success, what does ROI look like?”. Why are these so important?
When it comes to renewal, upselling, adding new product or services, these decisions are usually made by business leaders. If they cannot see value or success in your solution, you may lose them as customers.

“It happens because decision-makers and key stakeholders are unable to see the benefits of using the products or services in which they’ve invested. When they can’t see the value, they can’t justify spending money on it.”
Vikki Pope VP of Client Success, MapAnything

The most common argument against developing and documenting a success plan is not enough time available or customer don’t have the resources, or you cannot connect with right people to ask those questions. Nevertheless, customers who embrace a success plan have better outcomes as they can see the value and return on investment making the renewal/upsell a non-event.

As your customers travel their journeys, their needs and wants will evolve as the nature of businesses. As success plan should be considered as a living document that will change, grow and evolve with their customer’s overtime with multiple iterations.

In future posts, I will try to delve into success plans more by exploring their anatomy and reviewing the responsibilities of the stakeholders.

Thanks for reading and feel free to discuss….

Nick

Further Reading
Desired Outcomes
Three Steps to Building an Effective Client Success Plan
Customer Success Desired Outcome

Key Features for Citrix StoreFront 2.5

Some of the key features that are available for StoreFront 2.5, Happy Reading:

Dump cheat sheet

While working as Technical Lead Engineer, I always provided this dump cheat sheet to my new hire engineers. Usually engineers would have some idea of what a dump is and perhaps may have even analysed one or two, however knowing what, when and how to collect a dump is a different story.  Hence this cheat sheet was born to help engineers get quickly stuck into collecting dumps while trouble shooting issues. Dumps are really great for trouble shooting in particular scenarios.

How I used this dump sheet was to sit the engineers down and go through the document explaining in detail the various different  dump types and how to capture them. Then at the end of the session we had the fun part where we try to re enforce what they learned by throwing some scenarios and how they would tackle them using dumps.

Operating System Dump Types

Complete Memory Dump

  • A complete memory dump records all the contents of system memory computer  stops or is  forced to stop. You must have a paging file on the boot volume that is sufficient to hold all the physical RAM ( see page file, doing it right below).
  • Good for diagnosing Unresponsive Server OS , memory leak issues and high CPU spikes

Kernel Memory Dump

  • A kernel memory dump records only the kernel memory. You must have a pagefile large enough to accommodate kernel memory ( see page file, doing it right below).
  • Good for diagnosing BSODs and driver related issues, anything that effects the kernel.

Small Memory Dump

  • A small memory dump records the smallest set of information of why a crash occurred, usually identifies faulting module.
  • Good for identifying  patterns of times when BSODs occurs. Although useless for analysis

Automatic Memory Dump

  • An Automatic Memory Dump contains the same information as a Kernel Memory Dump. The difference between the two is not in the dump file itself, but in the way that Windows sets the size of the system paging file.
  • Good for managing page file more effectively. Only available for windows 8 or higher

You can read more here about the Varieties OS Dump Files here:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff560246%28v=vs.85%29.aspx

Page File

A page file is an optional, hidden system file on a hard disk. The page file can be used to  support system crash dumps and extend how much virtual memory a system can commit

Configuring a machine to catch a Dumps

In order to catch the correct dump its important that you set the correct settings via the registry on machine. Sending the wrong dump type to tech support may delay time in finding a solution.

  • Overview of memory dump file options for Windows Vista, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows XP, and Windows 2000 http://support.microsoft.com/kb/254649

Set dump type using software

Forcing a machine to generate a dump (only use in full OS hang or freeze scenario)

  • Crash the server when hung using keyboard. A hotfix is available to enable CrashOnCtrlScroll support for a USB keyboard on a computer that is running Windows Vista SP1 or Windows Server 2008 http://support.microsoft.com/kb/971284/
  • Good for physical servers

 

Generating Dumps on Server Virtualisation Platform (only use in hang scenario)

Hyper-v Dump

VmWare ESX Dump

XenServer Dump

 

Using an application to crash [BSOD] server (only use in hang scenario)

Using a software application to crash the server can be very useful in certain scenarios. For example if you wish to crash a server when a particular event has been triggered, or when a server hung and does not respond via the keyboard, you can remotely execute the software to dump the machine.

 

Generating Dumps on Citrix Provisioning Services Targets

When customers use Citrix in the environment they will often enable Citrix Provisioning Server (PVS )to help with scalability, storage and image maintenance. So why is this relevant when creating dumps? A streamed image behaves differently to a normal windows image. It operates on a one image disk to many targets. When a streamed standard mode target is rebooted the entire contents of the C: is lost. This means that its not possible to collect dump data that was written to C:. However there a few tricks that let us work around this limitation when using PVS.

XenServer Dump

Hyper-v Dump

VmWare ESX Dump

  • How to Capture a Memory Dump from a Provisioned Target in VMware Environment  http://support.citrix.com/article/CTX125086
  • Create Dumps for VMWare  targets and save core dump on local storage. This can be converted with vmss2core

 

User Mode dumps applications and processes

This dump file includes the entire memory space of a process, the program’s executable image itself, the handle table, and other information that will be useful to the debugger.

The main difference between user mode dumps and OS dumps is that,  when a user mode crash/hang happens it only occurs in the USER memory space which is isolated from the Kernel memory. The means that the Kernel remains relativity unaffected if a crash happen in the user space.

User mode dumps can be generated in several ways, the can crash or they can be forced to crash if debug info is required.

User Mode Crash (only use for individual applications/process crash)

Once the User mode is configured correct if an application crashes in the user space a full user dump will be generated. The below discusses how to set debugger to capture crashes

  •  CTX111901 – TestWER (http://support.citrix.com/article/CTX111901
  • Test Windows Error Reporting is set-up correctly by using this tool. If a test dump is generated you know you have implemented the reg keys correctly
  • How to Enable Full Page Heap for the IMA Service http://support.citrix.com/article/CTX104633/
  • PageHeap enables Windows features that reserve memory at the boundary of each allocation to detect attempts to access memory beyond the allocation. Dev Guys may request this some times. 

User Mode  dumps for process spikes, hangs or memory leaks

The below articles discuss how to capture user mode dumps for application hangs, cpu spikes or memory leaks.

  • How to create a user-mode process dump file in Windows Vista , Windows 7 and  2008 http://support.microsoft.com/kb/931673
  • Easy to use task manager for generating dumps, very useful when no other tools are available
  • No available in XP and 2003
  • How to Use the ProcDump Utility for Troubleshooting Application Process Issues http://support.citrix.com/article/CTX124508/
  • Good for catching intermittent issues or spikes
  • Can perform dumps at intervals helps diagnose memory leaks

 

Always check your dump consistency  before sending for analysis

 

Now test your knowledge, check the below scenarios and think how you would capture the dumps….

Scenarios

  1. Citrix Printer Service and Spooler Crash on windows 2008 R2
  2. User working with Windows 7 experiences a Word Hang
  3. XenApp 6.5 2008 R2 BSOD vtdw30.dll
  4. Windows 2008 R2 Login Hang
  5. Print Job not responding 2008
  6. VMWARE ESX 2008 R2 Hang
  7. Citrix Receiver Crash on Windows XP
  8. Windows 2008 Excel Crash
  9. Windows 2008 Server Hang PVS
  10. A hung Windows XP XenDesktop VDI using PVS on Hyper-V
  11. Windows 2008 R2 Server BSOD PVS
  12. Windows 2008 R2 Driver crash
  13. Custom legacy app hung on 2008 server with PVS
  14. Windows 2008 R2 Profiler Manager 25% CPU Spike  at Login
  15. Windows 2008 Server hung RDP not available
  16. XenApp Server not responding on Hyper-V
  17. Citrix Receiver not responding on windows XP client

StoreFront 2.0 Propagation completed successfully – Status Not Started

One of the engineers on my team fixed this issue recently. So I thought I would share the information for anyone else who encounters such problem.  After joining the server group successfully  first propagation reports the  message Status Not Started beside the server name. The propagation indeed fails even though the message states otherwise.  The solution to the problem is to change the Configuration replication service to run under Local System account.

XenDesktop 7 Citrix Studio slow to start

I have downloaded and started to install XenDesktop 7, the first thing that I noted that Citrix Studio was extremely slow to start.  I shrugged it off as first time launch but after subsequent reboots I notice the issue still persisted.  I have seen this issue lots in past and its mostly because of no internet access which is needed to check the signed dll with trusted CA. To workaround the issue we can disable this check as per below:

Open IE – Internet Options – Advanced tab – Untick the setting “Check for publisher’s certificate revocation”

certrevocation

AGEE Smart Access Filters do not work with XenApp Services Site (PNAgent) or Mobile Receivers

Just wanted to create this short post as I see this question come up frequently in techsupport.  Do AGEE Smart Access Filters work with  Web Interface – XenApp Services Site (PNAgent), the answer is no. I have seen many waste hours trying to get it working,  the XenApp services site (PNAgent) does not have the ability to use a call back function that handles smart access filters. This is simply by design,  this is troublesome especially as a lot of organizations tend to use the PNA site (XenApp Services site) for application delivery for mobile devices.

The solution is use Citrix Cloud Gateway/ StoreFront 2.0 which has the ability to handle smart access filters for mobile devices and other receivers, don’t forget to enable requireTokenConsistency. StoreFront 2.0 should be available by the end of June 2013.

See below for instructions.

http://nicholasconnolly.com/?p=170

http://support.citrix.com/article/CTX136669

How to Configure Connection Methods with Receiver for iOS on CloudGateway 2.0

http://support.citrix.com/article/CTX134666

 

Supported Citrix Desktop Lock with XenApp!

I often see the question arise in Citrix Technical support, is the Citrix Desktop lock ( Citrix appliance lock) supported with XenApp.

Unfortunately it is not supported with XenApp. The tool was designed for use with VDI and not  XenApp hosted desktops.

In receiver 3.4 documentation is refers us to the 3.2 documentation

For information about desktop lock, refer to the Receiver for Windows 3.2 documentation.

http://support.citrix.com/proddocs/topic/receiver-windows-34/receiver-windows-34-about.html

Important: Do not attempt to use the Desktop Viewer or the Desktop Lock to connect to desktops published with XenApp.

http://support.citrix.com/proddocs/topic/receiver-windows-32/ica-xd-choose-client.html

Hopefully this clears things up a little bit, any questions welcome!

I suggest using a free third party tool called ThinKiosk if you are looking for an desktop lock utility.

http://andrewmorgan.ie/thinkiosk/

Update to this Article from our PM

CitrixReceiverEnterprise.exe 3.4 can be used with XenApp published desktops and Desktop Lock.

CitrixReceiver.exe 4.0 does not support Desktop Lock.

Using WANem 2.3 with XenServer 6.1

I decided to blog this entry about  how to explain setting up WANem 2.3 with XenServer 6.1 so I don’t forget how to do it and perhaps others may find it useful too.

At the end of this blog you should be able to achieve two things:

  1. Use WANem as a router between private and public networks on XenServer
  2. Use WANem to simulate network latency conditions on XenServer

 The configuration used for this network topology is below:

image002

The first step we need to look at is creating two networks on XenServer. Automatically when XenServer is installed it should create Network 0 this is for public network traffic. We then need to create a second Private Network – This should be a single server private network on XenServer. Use the add Network function in XenServer. This network will be used by the XenServer host to communicate with all the VMs running on the host, it will not have public access.

image003 - Copy

 Next you need to download the WANem ISO

http://wanem.sourceforge.net/

 Once downloaded you will need to store in an SR so we can boot it from the network

image004

Next we need create a VM for the WANem ISO to boot from

image005

Accept all the defaults

image007

image009

Ensure that there is two networks assigned to the VM:

  • Network 0
  • Private Network

image012

Check the Networking settings for the newly created WANem VM

It’s important to note the interfaces:

  • Network 0 (Device 0) = eth0
  • Private Network (Device 1) = eth1

image013

Now we are ready to boot the WANem VM

The first screen that should appear is the configuration for the interfaces, as eth0 is our public address we are going to use DHCP for this INT or similarly you can use a static IP from your public network.

image014

  • Hit return

image015

  • Hit return again

Use the arrow keys to select network interface eth1. This will be used for our private network that we created early.

image016 - Copy

You will need to assign an address from your internal private network.

I am using local subnet 192.168.1.0 for my XenServer private network:

  • IP address: 192.168.1.2 for my WANem
  • Subnet Mask is 255.255.255.0
  • leave default gateway blank
  • Hit Enter again and S for save

Next you will be prompted for a password

image017

Next from the WANemControl command line issue the status . This will show us if the interfaces are up and if they are assigned the correct IP.

image018

Now we need to configure the WANem VM to route traffic between the two networks

  • exit2shell
  • modprobe iptable_nat
  • echo 1 > /proc/sys/net/ipv4/ip_forward
  • iptables –t nat –A POSTROUTING –o eth0  -j MASQUERADE
  • iptables -A FORWARD -i eth1 -j ACCEPT

image019

This completes the WANem configuration

Now we need to route all local subnet (Private Network) XenServer traffic through WANem VM to get access to the client machine/ public network (Network 0)

Enter the following command on any XenServer windows VM:

  • route add 0.0.0.0 MASK 0.0.0.0 192.168.1.2 -p

You can also add the Router option in DHCP Scope for clients/VMs to route through our WANem interface

image020

On the client machine we need to create a persistent route to the Private Network subnet via Network 0.  This will route all traffic from the client machine through the WANem IP address. The WANem will then forward this traffic onto the XenServer Private Network destination. This gives us access to all XenServer VMs from the client machine.

Enter the following command on any client machine :

  • route add 192.168.1.0 MASK 255.255.255.0 10.90.147.51 –p

To tune the network properties of the traffic going through WANem, open the WANem admin page in your browser.

Eth0 http://10.90.147.51/WANem/

There are two modes, basic and advanced that will enable toggle latency conditions to simulate a WAN connections. All traffic flowing through WANem will be effected.

image021

Happy WAN simulations!

BTW, if you reboot the WANem VM you will loose the the config.

For another day I need to figure how to convert WANem to a virtual appliance

Update:

I found this blog on “How to create WanEm v2.3 virtual appliance using XenServer” http://www.adevis.dk/blog/files/16e1af1624ae7c940841ce86750dbb8b-0.html

It works well once you get it up an running, however the only problem I found that when the appliance is rebooted the WANem configuration must be performed each time.  The only thing that is saved it ip tables nat modifications.

Some references:

http://www.revsys.com/writings/quicktips/nat.html

http://vninja.net/virtualization/installing-and-configuring-wanem-virtual-appliance/

http://technet.microsoft.com/en-us/library/bb490991.aspx

No customized OverrideIcaClientname prefix with StoreFront 1.2

This is short post as I have already discussed OverrideIcaClientname  and that it only works with Storefront 1.2 Receiver for Web sites  . I just want to expand a little further on this and clarify one point.  I have been queried a good few times now about this entry. Most people want to know how to change the default client name prefix “WR_” as this was possible in the past with WI, see article http://support.citrix.com/article/CTX111851 .

It could be used for something like multiple receiver for web sites located in different geos, so that to categorize the logon client by changing the client name prefix to e.g. IRL_ or UK_.

So is this possible with Receiver for Web? Well unfortunately it’s not possible to do that at this time.  I did a good bit of digging around an eventually found the function for creating the override ica client name prefix  “WR_” which is hard coded 😦 So we cannot make the change like before on the WI.

 The solution to use smart access filters with AGEE to control user access.

 For users connecting to StoreFront through Access Gateway Enterprise Edition, you can use SmartAccess to control user access to XenDesktop and XenApp resources on the basis of Access Gateway session policies. For more information about Smart Access, see Configuring SmartAccess on Access Gateway Enterprise Edition.

Disable password saving on StoreFront 1.2

This came up during the week when one of my colleagues contacted me about a disabling password saving on an android receiver device connecting to StoreFront 1.2.

This was fine in the past if we were using Web Interface and the XenApp Services site (aka PNAgent). The  authentication method could be set to allow or disable the ability for user to save their passwords. This would effect all devices connecting through the site.

The problem the customer faced wasn’t that they could not disable the save password on the android receiver device. For this feature already exists the user has the ability to override the password saving (see below for further details To override password saving).  However the customer wanted to enable  disable  save passwords on StoreFront server, thus not giving the user the option to save the password on the device.

Unfortunately this is a feature lacking at the moment, but I’m informed its coming down the pipe line.  I suggest opening a feature enhancement request with Citrix if you would like to see more traction.

Nonetheless during the course of troubleshooting a colleague was kind enough to share this tip that allows disable save password feature for Citrix Receiver for Windows. This maybe useful in some situations where the remote client registry entry (AllowSavePwd) cannot be controlled as documented in this solution http://support.citrix.com/article/CTX134341.

 You can disable the ability to save passwords at the StoreFront level with the below instructions.

1.       Locate the Authentication service directory on disk under the IIS root folder.

e.g. “C:inetpubwwwrootCitrixAuthentication”

2.       Open the file “ViewsExplicitFormsAuthenticate.aspx” in a text editor.

3.       Delete the following line:

<% Html.RenderPartial(“SaveCredentialsRequirement”, SaveCredentials); %>

4.       Save the file.

 

To override password saving

If you configure the server to save passwords, users who prefer to require passwords at logon can override password saving:

  • When creating the account, leave the password field blank.
  • When editing an account, delete the password and save the account.

http://support.citrix.com/proddocs/topic/receiver-android-33/mobile-receiver-admin-save-password.html