Configured debug type ‘pwa-chrome’ is not supported when debugging Cordova app in Visual Studio Code

When trying to debug an Ionic Angular application in an older version of Visual Studio Code, this error shows up.

Follow the checklist

  • Use a Visual Studio Code version that supports debugging, if your code is too old newer versions will stop working.
  • Make sure the Chrome Debugger extension is installed and enabled, if it’s greyed out in the Extension list, uninstall and reinstall it.
  • Do the same thing for Cordova Tools extension, if you can’t find it, use an even older version of VSC.
    • The safest bet is to use the version used to develop the app.

The best way is to update your code base to newer versions of languages, frameworks and libraries so you can use newer tools to debug the application. Otherwise this is a workaround.

401.3 – unathorized – You do not have permission to view this directory or page because of the access control list (ACL) configuration or encryption settings for this resource on the Web server.

Go to root node of IIS -> Authentication -> Anonymous Authentication, check which user the anonymous inherits the permissions from, set it to ApplicationPoolIdentity.

Then make sure the ApplicationPoolIdentity has permission to access the folder.

How to get raw query generated by Elasticsearch NEST library for debugging purpose

Source: https://stackoverflow.com/questions/28939022/get-raw-query-from-nest-client/50023531#50023531

For NEST / Elasticsearch.NET v6.0.2, use the ApiCall property of the IResponse object. You can write a handy extension method like this:

public static string ToJson(this IResponse response)
{
    return Encoding.UTF8.GetString(response.ApiCall.RequestBodyInBytes);
}

Or, if you want to log all requests made to Elastic, you can intercept responses with the connection object:

var node = new Uri("https://localhost:9200");
var pool = new SingleNodeConnectionPool(node);
var connectionSettings = new ConnectionSettings(pool, new HttpConnection());
connectionSettings.OnRequestCompleted(call =>
{
    Debug.Write(Encoding.UTF8.GetString(call.RequestBodyInBytes));
});

You need to call on the ES client connection setting object to allow reading request JSON. This is best done on DEBUG mode.

connectionSettings.DisableDirectStreaming(true)

Filtering by multiple conditions with nested queries in Elasticsearch

All bool queries are evaluated on a single document.

So if you have an index like this

Products= {

Fields: { Name: string; Value: int; }[];

}

And you want to find products with field “Price” between 10 and 20, and field “Discount” between 0 and 5, you can use the following query

bool: {

must: [

{nested: { //nested query to find products with price from 10 to 20},

{nested: { //nested query to find products with Discount from 0 to 5}

]

}

It looks quite hard to follow.