This is a mirror of official site: http://jasper-net.blogspot.com/

How To: Use Xperf

| Thursday, December 8, 2011
2678.GSDISKIOPERFRESULTS1_5F00_thumb_5F00_76C2E4DC.jpg

This is Syed Aslam Basha here from Relationship experience division (RXD) team.

You can use Xperf tool to capture trace and narrow down exact processes/operation which is causing performance issue like CPU usage, disk utilization by process, File I/O Types, processes usage and etc.

Example: To trace disk IO and CPU usage run the following trace command

E:\xperf>Xperf.exe -START -on FileIO+CSWITCH+DISK_IO_INIT+PROFILE+FILENAME+DRIVERS+NETWORKTRACE+DPC+INTERRUPT+Latency -stackwalk CSwitch+DiskReadInit+DiskWriteInit+DiskFlushInit+FileCreate+FileCleanup+FileClose+FileRead+FileWrite+FileFlush+profile -f E:\xperfresults\GSdiskio.etl -BufferSize 1024 -MaxBuffers 1024 -MaxFile 1024 -FileMode Circular

 

Run the performance scripts.

Stop tracing.

E:\xperf>xperf -stop

GSdiskio.etl is the trace file name open the trace file using xperfview.exe and analyze the results.

Read more: My learnings
QR: how-to-use-xperf.aspx

Posted via email from Jasper-net

Splunk

|
diagram_wheel.png

Splunk is the Engine for Machine Data

Splunk collects, indexes and harnesses the massive volumes of valuable machine data generated by your complex IT infrastructure, whether physical, virtual or in the cloud.

Use Splunk and put your machine data to work. Troubleshoot problems and investigate security incidents in minutes, not hours or days. Monitor your end-to-end infrastructure to avoid service degradation or outages. Meet compliance mandates at lower cost. Correlate and analyze complex events spanning multiple systems. Gain real-time operational visibility and insights for IT and Business users.

Splunk collects all your machine-generated data in real-time, whether physical, virtual or in the cloud. Splunk indexes everything for deep visibility, forensics and troubleshooting. Work smarter as you and your team share searches and add knowledge specific to your IT environment. Create ad hoc reports to identify trends or prove compliance controls. Build real-time dashboards to monitor for security incidents, application SLAs and other KPIs. Analyze user transactions, customer behavior, machine behavior, security threats, fraudulent activity and more, all in real time.

Read more: Splunk
QR: www.splunk.com

Posted via email from Jasper-net

Регистрация глобальных «хоткеев» при использовании WPF

|
Возможно, вы когда-то очень хотели чтобы в вашем приложении присутствовала возможность управления чем-либо через глобальные клавиши. И, возможно, вам нравится программировать с использованием технологии WPF. Тогда этот топик для вас.


Для решения проблемы стоит уяснить как работает механизм горячих клавиш в Windows, поскольку методы WPF, работающие с ними напрямую, отсутствуют. Поэтому нам понадобится обращаться к WinAPI.
Нам понадобятся приведённые ниже функции.

BOOL WINAPI RegisterHotKey(
 __in_opt HWND hWnd,
 __in   int id,
 __in   UINT fsModifiers,
 __in   UINT vk
);


Удаление хоткея:

BOOL WINAPI UnregisterHotKey(
 __in_opt HWND hWnd,
 __in   int id
);

Регистрация уникальной строки для идентификации хоткея и получение её идентификатора (атома):

    ATOM GlobalAddAtom(
     LPCTSTR lpString
    );


Read more: Habrahabr.ru
QR: https://chart.googleapis.com/chart?chs=80x80&cht=qr&choe=UTF-8&chl=http://habrahabr.ru/blogs/net/134158/

Posted via email from Jasper-net

Creating your own (customized) standard endpoints in WCF 4

|
Lately I’ve been writing and speaking a lot about WCF 4.5, but while delivering my “What’s new in WCF 4” session in Visual Studio Live yesterday I realized that there is one feature of WCF 4 that most people are not aware of, and do not really understand how useful it is – Standard Endpoints.

In WCF we always have to specify a set of address+binding+contract (ABC) for our endpoints. If our endpoints also need to be configured, for example – change the binding configuration, or the endpoint behavior, then we need to add some more configuration. We can use default configuration (another feature of WCF 4), but if we have two common settings, we cannot set two defaults and we’re back to square one.

Standard endpoints change the way we define endpoints – with standard endpoints we specify a special “kind” name in our endpoint, which automatically sets our endpoint’s address, binding, contract, binding configuration, and endpoint behavior.

For example – if we define the following endpoint:

<endpoint address="mex" kind="mexEndpoint"/>

The above endpoint will automatically be set with the mexHttpBinding and the IMetadataExchange contract.

If we define the following endpoints:

<endpoint address="web" kind="webHttpEndpoint" contract="MyNS.IMyContract"/>

We will get an endpoint which uses webHttpBinding, and automatically gets the webHttp endpoint behavior.

Although this is quite nice, this is the least we can do with standard endpoints. The real use of standard endpoints is when you create some of your own.

Image the following – you are a part of an infrastructure team in your organization and you need to explain to the dev teams which endpoint configuration they should use in their projects – “Please use NetTcp binding, with increased message size limits, with either security none or transport, and don’t forget to increase the send timeout”.

One way to do this is to send a memo to all the dev teams, hoping everyone follow your instructions to the letter. Another way you can do that is to create your own standard endpoint with all of the above configuration and just send it to the dev teams to use.

First of all you need to create your custom endpoint:


   1:  public class CompanyNameStandardEndpoint : ServiceEndpoint
   2:  {
   3:      private bool _isSecured;
   4:  
   5:      public CompanyNameStandardEndpoint(ContractDescription contract)
   6:          : base(contract)
   7:      {
   8:          this.Binding = new NetTcpBinding();
   9:          ResetBindingConfiguration(this.Binding);
  10:          this.IsSystemEndpoint = false;
  11:      }
  12:  
  13:      public bool IsSecured
  14:      {
  15:          get
  16:          {
  17:              return _isSecured;
  18:          }
  19:          set
  20:          {
  21:              _isSecured = value;
  22:              if (_isSecured)
  23:              {
  24:                  (this.Binding as NetTcpBinding).Security.Mode = SecurityMode.Transport;
  25:              }
  26:              else
  27:              {
  28:                  (this.Binding as NetTcpBinding).Security.Mode = SecurityMode.None;
  29:              }
  30:          }
  31:  
  32:      }
  33:  
  34:      // Receive a dynamic object instead of creating separate methods
  35:      // for netTcp, basicHttp, WSHttpBinding...
  36:      private void ResetBindingConfiguration(dynamic binding)
  37:      {
  38:          binding.SendTimeout = TimeSpan.FromMinutes(5);
  39:          binding.MaxReceivedMessageSize = Int32.MaxValue;
  40:          binding.MaxBufferSize = Int32.MaxValue;
  41:      }
  42:  }


Read more: Ido Flatow's Blog
QR: creating-your-own-customized-standard-endpoints-in-wcf-4.aspx

Posted via email from Jasper-net

Linux Server OS information

|
The following commands are useful to gather Linux server  information.  The Linux system information is useful for such scenarios as: a) The Server Engineer requests a spec for a new Linux server build from the DBA. b) Collating inventory information for  disaster recovery planning

cat /proc/cpuinfo   (cpuinfo linux)
cat /proc/version  (Linux version information)
cat /proc/swaps   (Linux swap information)
cat /etc/fstab       (file system configuration info)
cat /proc/meminfo   (Linux memory information)
df  -h   (disk info about all mounted file systems, human-readable)

Read more: Beyond Relational
QR: linux-server-os-information.aspx

Posted via email from Jasper-net

QuantumOS

| Tuesday, December 6, 2011
The Quantum OS is an open-source, text based, artificially intelligent operating system written in C# COSMOS.

Read more: Codeplex
QR: https://chart.googleapis.com/chart?chs=80x80&cht=qr&choe=UTF-8&chl=http://quantumos.codeplex.com/

Posted via email from Jasper-net

Gow - The lightweight alternative to Cygwin

|
Introduction

Gow (Gnu On Windows) is the lightweight alternative to Cygwin. It uses a convenient Windows installer that installs about 130 extremely useful open source UNIX applications compiled as native win32 binaries. It is designed to be as small as possible, about 10 MB, as opposed to Cygwin which can run well over 100 MB depending upon options.
Features and Benefits

    Ultra light: Small, light subset (about 10 MB) of very useful UNIX binaries that do not have decent installers (until now!).
    Shell window from any directory: Adds a Windows Explorer shell window (screenshot) so that you can right-click on any directory and open a command (cmd.exe) window from that directory.
    Simple install/remove: Easy to install and remove, all files contained in a single directory in a standard C:\Program Files path.
    Included in PATH: All binaries are conveniently installed into the Windows PATH so they are accessible from a command-line window.
    Stable binaries: All commands are stable and tested.

Win32 Utilities Overview

Below are just a few of the 130 applications found in Gow.

    Shell scripting: bash, zsh
    Compression: gzip, zip, bzip2, compress
    SSH: putty, psftp, pscp, pageant, plink
    Download/upload: cURL, wget
    FTP: NcFTP
    Editing: vim
    Text search/view: grep, agrep, less, cat, tail, head
    File system: mv, cp, du, ls, pwd, rmdir, whereis
    Development: make, diff, diff3, sleep, cvs, dos2unix, unix2dos


Read more: Gow
QR: wiki

Posted via email from Jasper-net

Ranorex

|
repository-ui-mapping-1c.jpg

Ranorex is entering the next level of GUI Test Automation.
It's based on the powerful RanoreXPath technology - test automation has never been easier!

Read more: Ranorex
QR: https://chart.googleapis.com/chart?chs=80x80&cht=qr&choe=UTF-8&chl=http://www.ranorex.com/

Posted via email from Jasper-net