Skip to content

Instantly share code, notes, and snippets.

iex(foo@ip-10-40-65-192)78> is_list(res)
true
iex(foo@ip-10-40-65-192)79> b = list_to_binary(res)
** (ArgumentError) argument error
:erlang.list_to_binary([4,16,36,64,100,144,196,256,324,400,484,576,676,784,900,1024,1156,1296,1444,1600,1764,1936,2116,2304,2500,2704,2916,3136,3364,3600,3844,4096,4356,4624,4900,5184,5476,5776,6084,6400,6724,7056,7396,7744,8100,8464,8836,9216,9604,10000,10404,10816,11236,11664,12100,12544,12996,13456,13924,14400,14884,15376,15876,16384,16900,17424,17956,18496,19044,19600,20164,20736,21316,21904,22500,23104,23716,24336,24964,25600,26244,26896,27556,28224,28900,29584,30276,30976,31684,32400,33124,33856,34596,35344,36100,36864,37636,38416,39204,40000])
erl_eval.erl:569: :erl_eval.do_apply/6
erl_eval.erl:364: :erl_eval.expr/5
src/elixir.erl:143: :elixir.eval_forms/3
/Volumes/Work/github/elixir/lib/iex/lib/iex/server.ex:81: IEx.Server.eval/4
/Volumes/Work/github/elixir/lib/iex/lib/iex/server.ex:37: IEx.Server.do_loop/1
def patterns do
{status,list} = :application.get_env(:elgrok, :patterns)
if status == :ok do
list
else
[]
end
end
defmodule HtmlParsing.Mixfile do
use Mix.Project
def project do
[ app: :html_parsing,
version: "0.0.1",
deps: deps ]
end
# Configuration for the OTP application
defmodule Tst123 do
def run(path) do
html = """
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<TITLE>My first HTML document</TITLE>
</HEAD>
@jschoch
jschoch / gist:5901429
Last active December 19, 2015 04:59
oddness
defmodule TF do
use GenServer.Behaviour
def start_link do
:gen_server.start_link({:local,:tf},__MODULE__,nil,[])
end
def throttle do
IO.puts "Starting at #{inspect :erlang.time}"
:gen_server.call :tf, :throttle
IO.puts "ending at #{inspect :erlang.time}"
end
def fetch(path) do
try do
case HTTPotion.get(path, @user_agent) do
Response[body: body, status_code: status, headers: _headers ]
when status in 200..299 ->
{ :ok, body }
{:error,:req_timedout} ->
Lager.info "fetch: timeout detected, sleeping 30 seconds"
:timer.sleep(30000)
fetch(path)
[ec2-user@ip-10-132-34-190 ~]$ curl -s http://169.254.169.254/latest/meta-data/public-hostname
ec2-54-227-36-44.compute-1.amaziex --sname foo@`curl -s http://169.254.169.253/latest/meta-data/public-hostname` --cookie foo
{error_logger,{{2013,7,5},{18,52,26}},"Can't set short node name!\nPlease check your configuration\n",[]}
{error_logger,{{2013,7,5},{18,52,26}},crash_report,[[{initial_call,{net_kernel,init,['Argument__1']}},{pid,<0.21.0>},{registered_name,[]},{error_info,{exit,{error,badarg},[{gen_server,init_it,6,[{file,"gen_server.erl"},{line,320}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]}},{ancestors,[net_sup,kernel_sup,<0.10.0>]},{messages,[]},{links,[<0.18.0>]},{dictionary,[{longnames,false}]},{trap_exit,true},{status,running},{heap_size,610},{stack_size,27},{reductions,183}],[]]}
{error_logger,{{2013,7,5},{18,52,26}},supervisor_report,[{supervisor,{local,net_sup}},{errorContext,start_error},{reason,{'EXIT',nodistribution}},{offender,[{pid,undefined},{name,net_kernel},{mfargs,
iex(1)> dbo = [
...(1)> {:adapter, :mysql},
...(1)> {:db_host, 'demo-db.foo.com'},
...(1)> {:db_port, 3306},
...(1)> {:db_username, 'root'},
...(1)> {:db_password, '1234'},
...(1)> {:cache_enable, :false},
...(1)> {:cache_exp_time, 1}
...(1)> ]
@jschoch
jschoch / db.ex
Last active December 19, 2015 12:48
ugh
# needed to get defdatabase and other macros
use Amnesia
# defines a database called Database, it's basically a defmodule with
# some additional magic
defdatabase Database do
# this is just a forward declaration of the table, otherwise you'd have
# to fully scope User.read in Message functions
deftable User

Getting started:

Add the following file to ./lib/db.ex

# needed to get defdatabase and other macros
use Amnesia
 
# defines a database called Database, it's basically a defmodule with