locked
How to get the maximum return on your forum question

    General discussion

  • Whether you’re a first time user or a long-time expert, when you post a question to a forum, you expect an answer that is quick, to-the-point, and preferably customized to your needs.
    But in lots of cases it actually takes a while (meaning additional questions and answers back and forth) before the community actually can get to the root cause of the issue.
    I would like to provide you with practical hints and tips, and background information of them, to get the maximum result from your postings on the forum, with the minimum of effort.
    If you ask the right question, the right way, you’ll get your answer much faster.

    Introduction

    What do you expect if you post a question on a forum? A quick answer, solving the issue you’re struggling with, in a timely fashion? However, the reality looks often different:

    • Most of questions posted on the forum require some knowledge of your environment. To understand your question, people need background information.
    • In many cases the initial question does not provide sufficient data to start helping.

    What's the most efficient way to allow the community to help you?
    The key to the quick solution is how you present the question.
    In this article, I will give you suggestions and recommendations that will help you to get the most out of this forum.

    Gathering the right data

    As a first step, you should gather all data that is related to your question. What the right data is depends on the type of answer you expect. A general, more high-level question in conjunction with the architecture and the design requires a different approach than a practical question to troubleshoot an issue. When troubleshooting your setup:

    • Take time to gather detailed data before you post
    • Provide concise, basic information about your environment
    • Describe error conditions in detail

    Even for more general architectural questions, take a moment and ask yourself:

    • What is the situation you are in now?
    • Where did you start from?
    • What are you trying to accomplish?
    • Do you have examples to help outline what you are aiming at?

     

    Important data components

    In most cases, there are some core components you should address in your initial question. These components include:

    • Basic ILM/MIIS server configuration
    • SQL server configuration
    • Management agent information
    • Error codes and error conditions

     

    Basic ILM/MIIS server configuration

    The following list highlights important data points regarding your ILM/MIIS server configuration:

    • MIIS/ILM build version
    • SQL Server build version
    • SQL Server location (local or remote)
    • License type: MSDN, volume, evaluation
    • Server type: development, test, production

     

    noteNote
    You should include information about these components in all posts that are related to troubleshooting.

     

    Retrieving the MIIS/ILM build version

    The build version of the platform is really essential, as specific builds solve specific known issues (or cause specific issues for the pessimists among us.).

    Just an illustration: the Microsoft Help and Support site is one of the sources that provides hotfixes and services packs.
    If you check for the MIIS/ILM hotfixes and service packs, you’ll immediately notice the build numbers.
    Most of these articles also provide detailed information which issues are fixed.

    The version number is pretty important and also easy to retrieve.
    To get the version number, perform the following steps:

    • Open the MIIS/ILM Identity Managerli>
    • To open the About Identity Manager dialog, click About in the Help menu.

    The following screenshots show examples for these steps.

    Carefully check the license type which you used to install your ILM with. It represents an important data point in the context of upgrading your system, as certain upgrade paths are not supported. (Reference: The ILM 2007 FAQ on the ILM product page, upgrade paths)

    The kind of server (development, test or production) you’re working with influences the approach to troubleshooting.
    For example, on a development server, it usually doesn’t hurt to take drastic measures, like completely deleting data, cleaning connector spaces or cleaning the metaverse and start all over again.
    However, in production, deleting a connector space with 100K or more objects shouldn’t happen without planning.
    If your audience is aware of your server type, you will get better suited troubleshooting suggestions.

    SQL Server related configuration data

    As the backend for the managed data, SQL server plays an essential role in your deployment.
    This is why you should include some information about your SQL server configuration into your post.

    When you review some of the posts on this forum, you will find many questions that are related to the performance of an environment.
    For example, using ILM with a remote SQL server has a significant impact on the overall performance of a deployed solution.

    Another reason to include information about your SQL setup is network and server security.
    A configuration with a remote SQL server requires a slightly different approach, in comparison with SQL installed on the ILM server.

    Typical SQL server parameters are:

    • Remote connections
    • SQL server build
    • SQL server type
    • SQL security permissions

    When you post a question, at a minimum, provide these SQL server parameters:

    • What is the SQL Server build version?
    • How is SQL installed: Locally on the ILM server or remotely?
    • License type: MSDN, volume, evaluation, production,…

     

    Management agent related configuration

    Management agents are used to exchange data between ILM and connected data sources. The type of a management agent used in your environment has a big impact on the response you get. When posting a question, you should address the following questions about your management agents:

    • What are the data sources ILM is connected to?
    • What MAs have you configured?
    • What 3rd party MAs, XMAs have you installed?
    • What is the object count in the MAs?
    • What is the object count in the MV?

    Information about your management agent configuration helps to get a global picture of the setup. Again, the management agent configuration influences the kind of approach to take for a specific configuration.

    If you get an error when configuring a MA, verify that the version of your data source is supported. Check the ILM 2007 FAQ for more information, first.

    The MV and CS object count is a practical indicator for the system load.
    The ratio of the CS objects and the MV objects provides an overview of the join and projection rules.

    Error codes and error conditions

    Error codes play an essential role in a troubleshooting scenario. However, in many posts I have seen, people tend to provide incomplete information about the errors that are documented by a system. In conjunction with error codes, you should follow the following guidelines:

    • Always include the exact error messages you get from the system.
    • Drill down to the detailed content of the messages.
    • Check the event viewer for related messages.
    • Review logs created by extensions (if applicable).
    • Provide log information details (verbose logging).

    This is the easy part. Just make sure you catch enough details:

    • Copy and paste the error messages in your post.
    • Error codes, specific messages allow you to get results quickly.

     

    noteNote
    Additionally, this is exact the information you need to provide to Microsoft Product Support Services, in case you need official support.

     

    Troubleshooting rules extensions

     

    Information on configuration circumstances

    In the previous section I’ve discussed components strictly related to the configuration basics of MIIS/ILM components, which you can retrieve in real-time.

    It’s clear that the complete ILM infrastructure exists of different parts, each depending on each other: the ILM application, the operating system, the SQL server, the .NET framework, the Visual Studio extensions, and more … It’s a complex balance, even a small change in one of these components, might cause trouble.

    Ideally you manage the complete ILM infrastructure yourself. But in my experience, this is rarely the case, as most live server setups are managed by a group of people. And, not every member of the team knows the in and outs of every part.

    So, when your ILM system starts behaving badly, just suddenly or intermittently, while it has been in operational mode for quite a while, it’s not always easy to determine the root cause.

    When you’re troubleshooting your MIIS/ILM setup, also take a wider look on the technical infrastructure. I can guarantee it is worthwhile to log the changes you make on your system configuration from the very start. Additionally, make sure the events and errors are logged accurately.

    Change logs and events logs allow you to answer the following list of questions:

    • Has there been a change to the system configuration recently, like an update/upgrade, hotfixes,...?
    • When exactly does the error condition occur?
    • Are you able to reproduce the error condition?
    • Is the error occurring intermittently?
    • Any particular configuration on your environment, like highly secured networking, server lockdown,…?

    You should post this kind of information in your initial post, as it is very helpful.

    Optional data parameters

    Another important type of information you should provide in your post, is NOT of a technical kind.
    It’s not about the MIIS/ILM configuration, neither.

    It concerns the actions you have done when troubleshooting, before you posted your question.
    What kind of steps have you already done to get an answer?

    • Which posts did you already look at?
    • Did you already install certain hotfixes?
    • Which run profiles did you run?

     

    noteNote
    This kind of questions should allow the community to spend time on making progress instead of replying to questions already addressed previously.

     

    System information you should not show at all

    It might be obvious, but it wouldn’t be the first time someone posted personal, secret, identifiable data on the web. It would not take too much effort to use it maliciously.

    Make sure you mask:

    • Passwords and secrets
    • Personal identifiable information
    • Live machine and domain info
    • Service Account names
    • IP addressing

     

    Architecture and design questions

    The forum is an excellent resource if you just need some assistance solving a problem on architectural level. The following list of hints and questions should allow you to provide the basics in your post:

    • Provide some basic data on your setup.
    • What did you implement already?
    • Describe what you actually aiming at. What are you trying to achieve?

    Provide as much detail as possible to make your case with examples and/or (anonymized) screenshots.

    Summary

    When troubleshooting your setup:

    • Take time to gather sufficient and detailed info.
    • Provide basic information on your environment.
    • Be specific, describe the error conditions in detail.

    When you need help or an insight on a design issue:

    • Provide some basic data on your setup.
    • Describe what you actually aiming at. What are you trying to achieve?

    In both cases provide as much detail as possible to make your case.
    Providing examples or (a link to) screenshots, help to understand.

    Check list

    The following check list summarizes the topics I have discussed in this article and should help you to make sure that you include all details that are relevant to your issue.

    Downloads

    This article and the check list are also availble for download, for offline use. 

    About the author

    Peter Geelen is in IT space for more than 12 years, with a solid base on the MS Windows Server platform running IT & network projects, MS server management and network support, 2nd & 3rd line troubleshooting, presales, enterprise architecture...
    Since 2005, Peter has been working as consultant in Identity & Access Management, Microsoft product support, supporting MIIS, ILM, FIM 2010, IAG, ADFS and other IDM systems, single sign-on & security solutions.
    Peter is currently a Senior Consultant at Traxion Belgium (http://www.traxion.com).
    Founder and president of the Belgian Microsoft Security User Group (http://www.winsec.be).

    Monday, June 29, 2009 9:46 PM

All replies

  • I would like to add a very good blog article to this post.
    You'll like it.
    (Thanks, Markus to bring it to my attention.)

    Source: How to ask questions in a technical forum by Bill Stewart.

    Summary:
    1. Search before you ask.
    2. Ask in the appropriate forum
    3. Use a meaningful subject line 
    4. Don't make your audience guess
    5. The forum audience is not your personal consultant
    6. Describe the goal, not the attempted solution
    7. Have appropriate expectations. A technical forum does not come with a service-level agreement.

    Bill Stewart makes a very good point: remember that there's no guarantee that

    • you will get an answer to your question,
    • you will like the answer you get,
    • what you want to do is even possible.

    8. If your question is answered, don't forgot to follow up. The answerers will highly appreciate it.

    Acknowledgements:
    Raymond Chen (The Old New Thing), Eric Raymond (How to Ask Questions the Smart Way), Eric Lippert (Fabulous Adventures in Coding) and Bill Stewart (Since Altair).


    Peter Geelen - Sr. Consultant IDA (http://www.fim2010.be)

    [If a post helps to resolve your issue, please click the "Mark as Answer" or "Helpful" button at the top of that post. By marking a post as Answered or Helpful, you help others find the answer faster.]
    Wednesday, June 02, 2010 8:14 PM