Skip to content

Instantly share code, notes, and snippets.

View danield137's full-sized avatar

Daniel Dror (Dubovski) danield137

View GitHub Profile
@danield137
danield137 / DataReaderUtils.cs
Created May 7, 2025 08:02
DataReaderToJsonElements
public static class DataReaderUtils {
public static List<JsonElement> ConvertDataReaderToJsonElements(this IDataReader reader)
{
var result = new List<JsonElement>();
// Get column names
var columnNames = new string[reader.FieldCount];
for (int i = 0; i < reader.FieldCount; i++)
{
columnNames[i] = reader.GetName(i);
@danield137
danield137 / test-mcp.sh
Created May 3, 2025 06:46
List MCP tools locally (node stateful mcp)
#!/bin/bash
# Debug mode
set -x
# Step 1: Initialize a session
echo "Step 1: Initializing session..."
# Add the required Accept headers
RESPONSE=$(curl -s -i -X POST http://localhost:3000/mcp \
.create table Person (Id: int, name:string)
.ingest inline into table Person <|
1, John
2, Mary
3, Alice
4, Jacob
5, Julie
.create table Restaurant (Id: int, name:string, city:string)
@danield137
danield137 / analyze.py
Last active May 6, 2024 22:03
Analyze NSG flow logs
import abc
from collections import defaultdict
import json
import os
import pandas as pd
import time
from dataclasses import dataclass
from typing import Any, Dict, List, Optional, Tuple
import requests
@danield137
danield137 / main.py
Created March 20, 2024 22:11
Python autoinstall missing dependencies
import subprocess
import sys
import importlib
def install_modules(modules):
"""Install multiple Python modules using pip."""
subprocess.check_call([sys.executable, "-m", "pip", "install", *modules])
def install_dependencies(required_modules):
def wrapper(func):
@danield137
danield137 / Gzip.csproj
Created January 20, 2023 01:16
Compression Benchmark
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks>net6.0;net48</TargetFrameworks>
<AutoGenerateBindingRedirects>True</AutoGenerateBindingRedirects>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="BenchmarkDotNet" Version="0.13.3" />
@danield137
danield137 / Program.cs
Created January 4, 2023 22:13
Interprocess signaling with C#
using System.Diagnostics;
namespace TestinManuelResetEventHandler
{
internal class Program
{
private enum RunMode
{
cluster,
listen,
@danield137
danield137 / LockAndWait.cs
Created December 28, 2022 00:17
Example of locking a write to resource, and providing an awaitable for readers
using System.Collections.Concurrent;
using System.Threading.Tasks;
namespace ProperLockingTester
{
public class WellLockedResource
{
private readonly object m_lock;
private bool lockedState = false;
private TaskCompletionSource<bool> m_taskCompletionSource;
@danield137
danield137 / ResultsToMarkdown.kql
Last active September 20, 2022 10:25
Azure Data Explorer - Useful utility functions
.create-or-alter function with (folder = "formatting", docstring = "Table to Markdown", skipvalidation = "true") TableToMarkdown(t:(*)) {
let schema = t | getschema;
let headers = schema | project ColumnName | summarize make_list(ColumnName) | extend String = strcat('| ', strcat_array(list_ColumnName, ' | '), ' |') | project String, Order=1;
let upperDivider = schema | project ColumnName, Sep = '---' | summarize Cols=make_list(Sep) | extend String = strcat('| ', strcat_array(Cols, ' | '), ' |') | project String, Order=2;
let data = t | extend Cols=pack_array(*) | extend String = strcat('| ', strcat_array(Cols, ' | '), ' |') | project String, Order=3;
headers
| union upperDivider
| union data
| order by Order asc
| summarize Rows=make_list(String)
@danield137
danield137 / kusto_to_es.py
Created June 28, 2022 09:32
Index a sample of a kusto table into elasticsearch
from typing import List
import requests
import json
import time
from azure.kusto.data import KustoClient, KustoConnectionStringBuilder
from datetime import datetime, timedelta
def main():
def read_kusto_data(q):
results = kc.execute_query(KUSTO_DB ,q)