Skip to content

Instantly share code, notes, and snippets.

View vector623's full-sized avatar

David Gallmeier vector623

View GitHub Profile
@vector623
vector623 / ObjectInitializer.cs
Created March 19, 2018 14:40
Example of object initialization.
var apolloUpdateAdjustment = new Apollo.UpdateAdjustment
{
supply = record["SUPPLY"].ToString(),
prosales = record["ProSales"].ToString(),
release_date = record["Release Date"].ToString(),
reason_for_update = record["Reason For Update"].ToString(),
itemid = Convert.ToInt64(record["ItemID"].ToString()),
};
@vector623
vector623 / Replicate.sh
Created March 20, 2018 19:54
Simple script to migrate configuration from one host to the next
scp root@oldhost:/root/.bash_history /tmp/migrate.sh
sudo sh /tmp/migrate.sh
public class Startup
{
public IConfigurationRoot Configuration { get; }
public ILoggerFactory LoggerFactory { get; }
public DbConnectionStringBuilder DbConnectionStringBuilder { get; }
public Startup()
{
Configuration = new ConfigurationBuilder()
.AddEnvironmentVariables("TROICENET_")
public class StatusController : Controller
{
public ILoggerFactory LoggerFactory { get; }
public DbConnectionStringBuilder ConnectionStringBuilder { get; }
public StatusController(DbConnectionStringBuilder connectionStringBuilder, ILoggerFactory loggerFactory)
{
ConnectionStringBuilder = connectionStringBuilder;
LoggerFactory = loggerFactory;
}
}
static class Program
{
public static IConfigurationRoot Configuration { get; }
public static ILoggerFactory LoggerFactory { get; }
public static DbConnectionStringBuilder DbConnectionStringBuilder { get; }
static Program()
{
Configuration = new ConfigurationBuilder()
.AddEnvironmentVariables("TROICENETDEV_")
.Build();
@vector623
vector623 / GithubPullerDemo.cs
Created May 17, 2018 14:01
a quick C# demo, reading data from Github's REST API and parsing the JSON
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using Microsoft.AspNetCore.Routing;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace GithubPullerDemo
{
public class GitHubRepo
@vector623
vector623 / redshift-cheatsheet.sql
Last active September 13, 2018 12:15 — forked from rudylee/redshift-cheatsheet.sql
Redshift Cheatsheet
## General Stuff
### List of all tables
SELECT * FROM pg_catalog.pg_tables
### Create new user and give it superuser access
create user adminuser createuser password '1234Admin';
alter user adminuser createuser;
### Create user without superuser privilege
@vector623
vector623 / WarehouseTransactions.cs
Created July 12, 2018 13:13
example Serilog usage in a typical ETL
public IActionResult WarehouseTransactions()
{
dynamic logs = new ExpandoObject();
try
{
using (var athenaDb = LocalDB.GetConnection())
using (var remoteDb = RemoteDB.GetConnection())
{
//download ids+lastmodified timestamp for source and destination
var sourceTransationState = athenaDb
@vector623
vector623 / SerilogConfig.cs
Last active July 12, 2018 14:36
format dynamic expando objects with Serilog
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.Destructure.ByTransforming<ExpandoObject>(JsonConvert.SerializeObject)
.WriteTo.AzureAnalytics(
workspaceId: Configuration["AZUREANALYTICS_WORKSPACEID"],
authenticationId: Configuration["AZUREANALYTICS_AUTHENTICATIONID"],
logName: "logTableName",
restrictedToMinimumLevel: LogEventLevel.Debug,
batchSize: 10)
.CreateLogger();