OldHelperFile: Difference between revisions

From I Will Fear No Evil
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
(One intermediate revision by one other user not shown)
Line 102: Line 102:
SQL stuff
SQL stuff


<pre>
psql -h lb-pool -d adtrack_ro -U pmorris
psql -h lb-pool -d adtrack_ro -U pmorris


Line 130: Line 131:
adtrack=>
adtrack=>


</pre>


*************************************************************
*************************************************************
Deployment  mim channel next_deploy
Deployment  mim channel next_deploy


<pre>
Pulley fun!
Pulley fun!
slugfest is where you start
slugfest is where you start
Line 170: Line 173:


nx-call-settings-redis-conf   
nx-call-settings-redis-conf   
</pre>


**************************************************************
**************************************************************
Line 183: Line 187:


****************************************************************
****************************************************************
<pre>
psql -h lb-pool -d adtrack_ro -U pmorris
psql -h lb-pool -d adtrack_ro -U pmorris
 
</pre>
Postgres (need to get to adtrack via culture club as there are connectivity issues going direct)
Postgres (need to get to adtrack via culture club as there are connectivity issues going direct)


Note to self.  Need to be setting up pgpass file and appropriate pathing statements for my profile or else.
Note to self.  Need to be setting up pgpass file and appropriate pathing statements for my profile or else.
 
<pre>
(03:13:03 PM) khochhalter@mim: adtrack=> \d at_whitelist
(03:13:03 PM) khochhalter@mim: adtrack=> \d at_whitelist
               Table "public.at_whitelist"
               Table "public.at_whitelist"
Line 229: Line 234:
(03:13:17 PM) khochhalter@mim: http://intranet.marchex.com/techwiki/Wiki.jsp?page=VS.Database.Access
(03:13:17 PM) khochhalter@mim: http://intranet.marchex.com/techwiki/Wiki.jsp?page=VS.Database.Access
(03:23:21 PM) khochhalter@mim: http://intranet.marchex.com/techwiki/Wiki.jsp?page=VS.DatabaseRestore
(03:23:21 PM) khochhalter@mim: http://intranet.marchex.com/techwiki/Wiki.jsp?page=VS.DatabaseRestore
 
</pre>


*********************************************************************
*********************************************************************
Update dns in the company via our fancy cvs repo
Update dns in the company via our fancy cvs repo
 
<pre>
cvs co dns
cvs co dns
edit file that you need to edit
edit file that you need to edit
Line 254: Line 259:


whack tinydns-marchex-data ns1.sad ns2.sad ns3.phl ns4.phl ops1.sea ops2.sea
whack tinydns-marchex-data ns1.sad ns2.sad ns3.phl ns4.phl ops1.sea ops2.sea
 
</pre>
************************************************************************
************************************************************************
 
<pre>
New number 973.749.1276
New number 973.749.1276
Number that should not route to -- 973.749.1079
Number that should not route to -- 973.749.1079
Line 313: Line 318:
!
!


 
</pre>


Numbers are in the call route repo in git  (cloned the callroute directory)
Numbers are in the call route repo in git  (cloned the callroute directory)
Line 323: Line 328:


As near as I can tell this *should* give us the results that we would want since it's a specific match.  I'm still don't entirely have my head wrapped around the translation rules.  So once Sean gets the test number assigned to the XO PRI, we can schedule a maintenance event and I can see what happens with that.
As near as I can tell this *should* give us the results that we would want since it's a specific match.  I'm still don't entirely have my head wrapped around the translation rules.  So once Sean gets the test number assigned to the XO PRI, we can schedule a maintenance event and I can see what happens with that.
 
<pre>
dial-peer voice 301 voip
dial-peer voice 301 voip
  description outgoing SIP to sip4
  description outgoing SIP to sip4
Line 387: Line 392:


cd /home/www11/www/htdocs ; sudo gtar -xvzf ADTRACK_1_1_32.tar.gz ; sudo ln -s ADTRACK_1_1_32 adtrack.new
cd /home/www11/www/htdocs ; sudo gtar -xvzf ADTRACK_1_1_32.tar.gz ; sudo ln -s ADTRACK_1_1_32 adtrack.new
 
</pre>
**************************************
**************************************


Adtrack database recovery
Adtrack database recovery
 
<pre>
(11:56:12 AM) Jacob Drahos: in Hochhalter: ok
(11:56:12 AM) Jacob Drahos: in Hochhalter: ok
(11:08:06 AM) Kevin Hochhalter: so, you need to start adtrack_call_logger on the cp servers
(11:08:06 AM) Kevin Hochhalter: so, you need to start adtrack_call_logger on the cp servers
Line 405: Line 410:
(11:11:22 AM) Kevin Hochhalter: if you have questions call my cell: 206-303-9095
(11:11:22 AM) Kevin Hochhalter: if you have questions call my cell: 206-303-9095
(11:11:34 AM) Kevin Hochhalter: I'll stay on mim but might not be close to the 'puter
(11:11:34 AM) Kevin Hochhalter: I'll stay on mim but might not be close to the 'puter
 
</pre>
********************************************
********************************************


Line 412: Line 417:


***********************************************
***********************************************
VSTACTICAL vstactical
Scripts have been ran in QA. I am currently verifying data from files.
I'm signing off, because I see no reason for any hesitation on this
deployment.
Tag for deployment:
VSTACTICAL_0_6_138
Steps are:


Make vstactical tarball:
Make vstactical tarball:
 
<pre>
VSTACTICAL_TAG=VSTACTICAL_0_6_138
VSTACTICAL_TAG=VSTACTICAL_0_6_138
git archive --remote=git.marchex.com:/src/git/vstactical --format=tar --
git archive --remote=git.marchex.com:/src/git/vstactical --format=tar --
Line 443: Line 435:
VSTACTICAL_#_#_##.tar.gz ; sudo ln -s VSTACTICAL_#_#_##  
VSTACTICAL_#_#_##.tar.gz ; sudo ln -s VSTACTICAL_#_#_##  
vstactical.new;done
vstactical.new;done
 
</pre>
Deploy:
Deploy:
 
<pre>
On cron1 and cron2 host:  
On cron1 and cron2 host:  
Verify extracted tarball from pre-deploy steps  
Verify extracted tarball from pre-deploy steps  
Line 456: Line 448:


f@ilBl0g!
f@ilBl0g!
</pre>
*****************************************************
*****************************************************
 
<pre>
grep '19/Oct/2011:17:2' access_log | cut -d " " -f 5 | sort | uniq -c | sort -rn | head -n 10
grep '19/Oct/2011:17:2' access_log | cut -d " " -f 5 | sort | uniq -c | sort -rn | head -n 10
grep '19/Oct/2011:17:2' access_log | cut -d " " -f 5 | grep -v '^-' | sort | uniq -c | sort -rn | head -n 10
grep '19/Oct/2011:17:2' access_log | cut -d " " -f 5 | grep -v '^-' | sort | uniq -c | sort -rn | head -n 10
Line 464: Line 457:


tshark -i bond1 port 5060 -t ad
tshark -i bond1 port 5060 -t ad
 
</pre>
*****************************************************
 
vsac1-3 manage the mp3 transcoding.  #3 is slightly broked.  You go to vscp 1-4 /site/adtrack/current/conf to update mpc.phl file to add/remove stuff.
 
*****************************************************
*****************************************************


Line 476: Line 465:


adtrack blacklist stuff
adtrack blacklist stuff
 
<pre>
adtrack_ro=> select * from at_penalty_box where number = '7709627220';
adtrack_ro=> select * from at_penalty_box where number = '7709627220';
number | unassigned_lines | penalty_started |  
number | unassigned_lines | penalty_started |  
Line 524: Line 513:
WHERE at_settings.settings_id = at_forward_no.settings_id
WHERE at_settings.settings_id = at_forward_no.settings_id
AND account_id = 'CA6phk3VXWsSoAG_';
AND account_id = 'CA6phk3VXWsSoAG_';
 
</pre>


*****************************************************dconcepcion@marchex.com
*****************************************************dconcepcion@marchex.com
 
<pre>
find /mnt/site/backups/* -mtime +15 -exec rm {} \;
find /mnt/site/backups/* -mtime +15 -exec rm {} \;
 
</pre>
*****************************************************
*****************************************************
Asterisk maintenance stuff
Asterisk maintenance stuff
 
<pre>
connect to console (change -i to -r from your ps -ef cruft)
connect to console (change -i to -r from your ps -ef cruft)
sudo /site/asterisk/asterisk-1.6.2.6/sbin/asterisk -C /site/nx-call-proc-ast-conf/conf/asterisk.conf -r
sudo /site/asterisk/asterisk-1.6.2.6/sbin/asterisk -C /site/nx-call-proc-ast-conf/conf/asterisk.conf -r
Line 541: Line 530:
core stop now
core stop now
core stop gracefully
core stop gracefully
 
</pre>
*********************************************************
*********************************************************


NetScaler net scaler
NetScaler net scaler
 
<pre>
ssh as nsroot to appropriate machine
ssh as nsroot to appropriate machine
disable server servername.phl
disable server servername.phl
Line 551: Line 540:


status
status
 
</pre>




Line 558: Line 547:
mysql crap
mysql crap


 
<pre>
/site/mysql/mysql-5.0.51a/bin/mysqldump -u root -p -S /site/mysql-pike/run/mysql.sock sct3k > sct3k_20110211.sql
/site/mysql/mysql-5.0.51a/bin/mysqldump -u root -p -S /site/mysql-pike/run/mysql.sock sct3k > sct3k_20110211.sql
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < add_ce_id_and_ce_name_to_coinfo.sql  
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < add_ce_id_and_ce_name_to_coinfo.sql  
Line 572: Line 561:


/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < Update50statesColleges_12-2011.sql  
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < Update50statesColleges_12-2011.sql  
 
</pre>
 
****************************************
xen crap
 
sudo xm create -c /etc/xen/U/config.file
sudo xm destroy <id>
sudo xm reboot <id>
 
****************************************
 
nim script cruft
 
at ctns_to_return.txt | /site/perl/perl-5.10.1-1/bin/perl -I /site/oracle_client/client-11.2.0.1/5.10.1/lib return_numbers.pl --DSN=oranext-cluster.sad.marchex.com:1521/OPNEXT.marchex.com --User=nim_numbers --Pass=pFJ6w_XECmN > output.txt


****************************************
****************************************
Line 592: Line 568:


reset default image location
reset default image location
 
<pre>
virsh
virsh
pool-destroy default
pool-destroy default
Line 602: Line 578:


cryptsetup luksChangeKey /dev/mapper/vgsys-imgs1
cryptsetup luksChangeKey /dev/mapper/vgsys-imgs1
 
</pre>
*****************************************
*****************************************


Force unmount of nfs
Force unmount of nfs
 
<pre>
sudo umount -f -l /foo/bar
sudo umount -f -l /foo/bar
 
</pre>
***************************************
***************************************
 
<pre>
For an Amazon Linux AMI, the user name is ec2-user.
For an Amazon Linux AMI, the user name is ec2-user.


Line 626: Line 602:


Otherwise, if ec2-user and root don't work, check with the AMI provider.
Otherwise, if ec2-user and root don't work, check with the AMI provider.
 
</pre>
***********************************************
***********************************************
 
<pre>
cat secure | grep "Invalid user" | awk '{print $8}'  | sort | uniq -c | sort -rf | less
cat secure | grep "Invalid user" | awk '{print $8}'  | sort | uniq -c | sort -rf | less


Line 635: Line 611:
sudo vi /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security
sudo vi /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security


 
</pre>


*************************************************
*************************************************


switch branches
switch branches
 
<pre>
git branch mc2-1382-kaldi-asr-ingress origin/mc2-1382-kaldi-asr-ingress
git branch mc2-1382-kaldi-asr-ingress origin/mc2-1382-kaldi-asr-ingress
then
then
git checkout mc2-1382-kaldi-asr-ingress origin
git checkout mc2-1382-kaldi-asr-ingress origin
 
</pre>
**************************************************
**************************************************


route53 aws cli
route53 aws cli
<pre>
aws route53 change-resource-record-sets \
aws route53 change-resource-record-sets \
--hosted-zone-id Z1U05RZDW3PZ3K \
--hosted-zone-id Z1U05RZDW3PZ3K \
Line 669: Line 646:
     }
     }
}
}
 
</pre>
*****************************************************
*****************************************************
<pre>
git clone foo
git clone foo
git checkout -b blah1
git checkout -b blah1
Line 677: Line 655:


Then go online and submit the branch as a pull request
Then go online and submit the branch as a pull request
 
</pre>
******************************************************
******************************************************
[[Category:Misc]]

Latest revision as of 19:26, 17 May 2023


Voicestar bastion host

culture-club.ccsphl.voicestar.com

On kajagoogoo (ugh) gotta get the nis+ stuff going

sudo useradd -u <marchex_uid> -g 1 -G 20,22,200 -s /bin/bash -c "Joe User" -k /etc/skel -d /home/kajagoogoo/users/<initial>/<username> -m <username>
edit /etc/netgroup (of course after making just in case backup)

sudo passwd <username>
cd yp
ls
sudo make
exit

have EU login and change their password on kajagoogoo ... one that is complete another make in /var/yp must be done.

sudo useradd -u 2010 -g 1 -G 20,22,200 -s /bin/bash -c "John Crawford" -k /etc/skel -d /home/kajagoogoo/users/j/jacrawford -m jacrawford


Voicestar dev/qa nodes:
wwwdev.ccsphl
vscpdev1.ccsphl
vsacdev1.ccsphl (and 2)
vspdfdev1.ccsphl (and 2)

Deploys to staging/qa

scp ADTRACK_1_1_26.tar.gz vscodev1.phl:~/
scp ADTRACK_1_1_26.tar.gz vscpdev1.phl:~/
scp ADTRACK_1_1_26.tar.gz vsacdev1.phl:~/
scp ADTRACK_1_1_26.tar.gz vsacdev2.phl:~/


What was done on wwwdev (slightly differenty than 
cd /home/wwwdev/www/htdocs/
ls
sudo cp ~/ADTRACK_1_1_26.tar.gz .
ls
ls -latr
sudo gtar -zxvf ADTRACK_1_1_26.tar.gz 
ls
ls -latr
sudo ln -s ADTRACK_1_1_26 adtrack.new
ls -latr
sudo /etc/init.d/apache stop;sudo /etc/init.d/blix stop;sudo /etc/init.d/at_error_snmp_converter stop;sudo /etc
/init.d/numberorder_process_orders stop;sudo /etc/init.d/numberorder_process_segments stop

sudo perl -e 'rename shift, shift or die $!' adtrack.new adtrack 

ls -latr

sudo /etc/init.d/apache start;sudo /etc/init.d/blix start;sudo /etc/init.d/at_error_snmp_converter start;sudo /
etc/init.d/numberorder_process_orders start;sudo /etc/init.d/numberorder_process_segments start

ps -ef | grep http

exit

Where is the current git code?

svn co svn+ssh://svn.marchex.com/src/svn/git/trunk/x86_64-deb5.0/git-1.7.1-1/

^^ Fail on this one. Go

Whenever doing something in prod that is impacting in anyway:

email to prod-notice@marchex.com

ops4.sea has a directory called: /site/escrow-service/data In this directory you see escrow...just a text file....sudo less escrow to grep out a password if need be



Force config update on a server: (as in when a server isn't picking up changes made in last3) (01:35:18 PM) chubsie: sudo (heh) /etc/init.d/cfservd restart

                                                                                                  • /

PFC pay for call

MCA Marchex Call Analytics

NIM

SQL stuff

psql -h lb-pool -d adtrack_ro -U pmorris

psql -h lb-pool -d adtrack -U at

adtrack=> begin;
BEGIN
adtrack=> insert into at_whitelist (number, account_id) values
('4164170000', 'global');
INSERT 0 1
adtrack=> insert into at_whitelist (number, account_id) values
('4164180525', 'global');
INSERT 0 1
adtrack=> insert into at_whitelist (number, account_id) values
('4164562981', 'global');
INSERT 0 1
adtrack=> select * from at_whitelist where number in
('4164170000','4164180525','4164562981');
number | account_id | created
------------+------------+-------------------------------
4164170000 | global | 2011-09-14 19:46:39.846512-04
4164180525 | global | 2011-09-14 19:46:39.846512-04
4164562981 | global | 2011-09-14 19:46:39.846512-04
(3 rows)

adtrack=> commit;
COMMIT
adtrack=>

Deployment mim channel next_deploy

Pulley fun!
slugfest is where you start
/site/pulley/bin/pulley
login
source  (staging or production)

submit nim-redis-conf#mca_router_release_rc_11

whack nim-redis-conf#mca_router_release_rc_11 nimcache1.phl nimcache2.phl nimcache3.phl

note that the conf name and tag are separated by the hash.  You can release to multiple boxes with whitespace as a separator.


Example deployment stuff
submit nx-proxy-primedia#PFC_1_068_RC_01	SUCCESS
submit nx-cs-publisher#PFC_1_068_RC_01	SUCCESS
submit nx-mgmt-api#PFC_1_067_RC_02	SUCCESS
submit nx-user-api#PFC_1_067_RC_02	SUCCESS
submit nx-reporting-api#PFC_1_067_RC_02	SUCCESS
submit nx-public-ui#PFC_1_067_RC_02	FAIL
submit nx-voicestar-sync#VS_SYNCER_HF_01 SUCCESS	
passenger#PASSENGER_0_0_2	



whack nx-proxy-primedia nxclp1.sad nxclp2.sad	Success
whack nx-cs-publisher nxpub1.sad nxpub2.sad	SUCCESS
whack nx-user-api nxapi1.sad nxapi2.sad	SUCCESS
whack nx-mgmt-api nxapi1.sad nxapi2.sad	SUCCESS
whack nx-reporting-api nxapi1.sad nxapi2.sad SUCCESS	
whack ruby nxui1.sad nxui2.sad	skipped
whack passenger nxui1.sad nxui2.sad skipped	
whack nx-public-ui nxui1.sad nxui2.sad	skipped for now
whack nx-voicestar-sync nxpub1.sad nxpub2.sad success

nx-call-settings-redis-conf  

Zenoss Bits

/usr/local/zenoss/common/libexec/check_http ${here/id} -f -R Please sign in

Voicestar DB3 if you update the symlink on prod databases otherwise you blow away the db

psql -h lb-pool -d adtrack_ro -U pmorris

Postgres (need to get to adtrack via culture club as there are connectivity issues going direct)

Note to self. Need to be setting up pgpass file and appropriate pathing statements for my profile or else.

(03:13:03 PM) khochhalter@mim: adtrack=> \d at_whitelist
              Table "public.at_whitelist"
   Column   |           Type           |   Modifiers
------------+--------------------------+---------------
 number     | text                     | not null
 account_id | text                     | not null
 created    | timestamp with time zone | default now()
Indexes:
    "at_whitelist_pkey" PRIMARY KEY, btree (number, account_id)
    "whitelist_cache_key" btree (((('whitelist:'::text || number) || ':'::text) || account_id))
Triggers:
    _adtrack_cluster_logtrigger AFTER INSERT OR DELETE OR UPDATE ON at_whitelist FOR EACH ROW EXECUTE PROCEDURE _adtrack_cluster.logtrigger('_adtrack_cluster', '107', 'kk')
    update_whitelist_cache_trg AFTER INSERT OR DELETE OR UPDATE ON at_whitelist FOR EACH ROW EXECUTE PROCEDURE list_to_cache_queue()
Disabled triggers:
    _adtrack_cluster_denyaccess BEFORE INSERT OR DELETE OR UPDATE ON at_whitelist FOR EACH ROW EXECUTE PROCEDURE _adtrack_cluster.denyaccess('_adtrack_cluster')

adtrack=> begin;
BEGIN
adtrack=> insert into at_whitelist (number, account_id) values ('6502800002','CA6ph0pTj_0zIQE0');
INSERT 0 1
adtrack=> select * from at_whitelist where account_id = 'CA6ph0pTj_0zIQE0';
   number   |    account_id    |            created
------------+------------------+-------------------------------
 6502800002 | CA6ph0pTj_0zIQE0 | 2011-09-23 18:11:09.052406-04
(1 row)

adtrack=> insert into at_whitelist (number, account_id) values ('4152589777','CA6ph0pTj_0zIQE0');
INSERT 0 1
adtrack=> select * from at_whitelist where account_id = 'CA6ph0pTj_0zIQE0';
   number   |    account_id    |            created
------------+------------------+-------------------------------
 6502800002 | CA6ph0pTj_0zIQE0 | 2011-09-23 18:11:09.052406-04
 4152589777 | CA6ph0pTj_0zIQE0 | 2011-09-23 18:11:09.052406-04
(2 rows)

adtrack=> commit;
COMMIT
adtrack=>
(03:13:17 PM) khochhalter@mim: http://intranet.marchex.com/techwiki/Wiki.jsp?page=VS.Database.Access
(03:23:21 PM) khochhalter@mim: http://intranet.marchex.com/techwiki/Wiki.jsp?page=VS.DatabaseRestore

Update dns in the company via our fancy cvs repo

cvs co dns
edit file that you need to edit
update RELEASE_NOTES in tinydns-marchex with the new tag and whatnot
cvs diff -uN  | less  //Check your diff bitch!
cvs diff -uN > ~/<tag>.diff  //Get your file for sending out for code review
cvs commit ... put your info in there and save it
//Tag your shizz
cvs tag TINYDNS_MARCHEX_1_1_844  // just so happens to be the tag I used on that find day
tell prod-notice@ that you're going to do something fun with dns
log into slugfest and then pulley and 
status tinydns-marchex-data //look and see that your tag is the next increment, and gets you a lovely list of servers to whack
submit tinydns-marchex-data#<that tag thing again>
whack tiny-dns-marchex server1 server2 server3 // whatever the servers are that you want to whack
status tinydns-marchex-data // get you some good info on whether or not you successfully whacked

TINYDNS_MARCHEX_1_1_863
*) tinydns-marchex-data:  Changed hostnames for nimcache3/4.qa to 1/2.qa2 and
   changed nimcr3/4.qa to nimcr1/2.qa2 [pmorris]

whack tinydns-marchex-data ns1.sad ns2.sad ns3.phl ns4.phl ops1.sea ops2.sea
New number 973.749.1276
Number that should not route to -- 973.749.1079
8.14.170.143, 144 are the test servers that 1276 should be routing to.

6:0 <-- appears to be the port the PRI is connected up on both routers

vgw1-r7.ccsphl.voicestar.com
vgw1-r8.ccsphl.voicestar.com

W0nd3rTw1ns

Output modifiers : begin include exclude

test voice translation-rule name-tag input-number

sho call history voice brief
265F : 8448368 13868561020ms.426899 +-1 +11800 pid:204 Originate 9737491276
 dur 00:00:00 tx:430/68800 rx:288/46080 10  (normal call clearing (16))
 IP 8.14.168.207:15684 SRTP: off rtt:1ms pl:3000/0ms lost:0/1/0 delay:70/60/100ms g711ulaw TextRelay: off
 media inactive detected:n media contrl rcvd:n/a timestamp:n/a
 long duration call detected:n long dur callduration :n/a timestamp:n/a

265F : 8448367 13868561010ms.426900 +-1 +11800 pid:200 Answer 2064341366
 dur 00:00:00 tx:529/84640 rx:288/46080 10  (normal call clearing (16))
 Telephony 6/0:1:D (8448367) [6/0:1.21] tx:10640/0/0ms g711ulaw noise:-55dBm acom:89dBm
 long duration call detected:n long dur callduration :n/a timestamp:n/a

show voice call summary
show voice call status


Controller 1/7 is down.

controller T1 1/7
 framing esf
 linecode b8zs
 pri-group timeslots 1-24
 description Paetec SGNS045157

T1 1/6 is up.
  Applique type is Channelized T1
  Cablelength is long gain36 0db
  Description: Paetec SGNS045163
  No alarms detected.
  alarm-trigger is not set
  Version info of slot 1:  HW: 768, PLD Rev: 4
  Framer Version: 0x8

!
dial-peer voice 107 pots
 description outgoing to POTS, VSSIP->100->107->POTS
 preference 1
 destination-pattern 9907
 port 1/6:D
!

Numbers are in the call route repo in git (cloned the callroute directory)



Dial plan needs to be "called number 800-800-8000 routes to 8.14.170.143 8.14.170.144

As near as I can tell this *should* give us the results that we would want since it's a specific match. I'm still don't entirely have my head wrapped around the translation rules. So once Sean gets the test number assigned to the XO PRI, we can schedule a maintenance event and I can see what happens with that.

dial-peer voice 301 voip
 description outgoing SIP to sip4
 preference 9
 destination-pattern NPANXXXXXX
 translate-outgoing called 3  (not sure this is actually needed here)
 session protocol sipv2
 session target ipv4:8.14.170.143
 dtmf-relay rtp-nte
 codec g711ulaw
 no vad

dial-peer voice 302 voip
 description outgoing SIP to sip4
 preference 9
 destination-pattern NPANXXXXXX
 translate-outgoing called 3
 session protocol sipv2
 session target ipv4:8.14.170.144
 dtmf-relay rtp-nte
 codec g711ulaw
 no vad

translation-rule 1
 Rule 0 ^10 0
 Rule 1 ^11 1
 Rule 2 ^12 2
 Rule 3 ^13 3
 Rule 4 ^14 4
 Rule 5 ^15 5
 Rule 6 ^16 6
 Rule 7 ^17 7
 Rule 8 ^18 8
 Rule 9 ^19 9
!
!
translation-rule 2
 Rule 0 ^0 99000
 Rule 1 ^1 99001
 Rule 2 ^2 99002
 Rule 3 ^3 99003
 Rule 4 ^4 99004
 Rule 5 ^5 99005
 Rule 6 ^6 99006
 Rule 7 ^7 99007
 Rule 8 ^8 99008
 Rule 9 ^9 99009
!
!
translation-rule 3
 Rule 0 ^99000 0
 Rule 1 ^99001 1
 Rule 2 ^99002 2
 Rule 3 ^99003 3
 Rule 4 ^99004 4
 Rule 5 ^99005 5
 Rule 6 ^99006 6
 Rule 7 ^99007 7

for i in {1..11} ; do cd /home/www$i/www/htdocs ; sudo gtar -xvzf ADTRACK_1_1_32.tar.gz ; sudo ln -s ADTRACK_1_1_32 adtrack.new;done

for i in {1..11} ; do ssh www$i "cd /home/www$i/www/htdocs ; sudo gtar -xvzf ADTRACK_1_1_32.tar.gz ; sudo ln -s ADTRACK_1_1_32 adtrack.new";done

cd /home/www11/www/htdocs ; sudo gtar -xvzf ADTRACK_1_1_32.tar.gz ; sudo ln -s ADTRACK_1_1_32 adtrack.new

Adtrack database recovery

(11:56:12 AM) Jacob Drahos: in Hochhalter: ok
(11:08:06 AM) Kevin Hochhalter: so, you need to start adtrack_call_logger on the cp servers
(11:08:28 AM) Kevin Hochhalter: you have to do this somewhat slowly and carefully
(11:08:59 AM) Kevin Hochhalter: watch fad-gadget:/var/log/asterisk while you're doing this, and monitor /site/mvs-ast-call-log on each cp server
(11:09:26 AM) Kevin Hochhalter: if adtrack_call_logger gets hung up on a given cp server, shut it down and kill it's pids if you have to
(11:09:31 AM) Kevin Hochhalter: and move on to the next one
(11:10:16 AM) Kevin Hochhalter: once all of the cp servers have processed all of the files, go back through and deal with anything in /site/mvs-ast-call-log/dead on each host
(11:10:37 AM) Kevin Hochhalter: when you're about halfway through the cp servers, restart mpc_audio_convert on the ac servers
(11:10:55 AM) Jacob Drahos: so far so good
(11:11:05 AM) Jacob Drahos: getting started unless i need to know more
(11:11:11 AM) Kevin Hochhalter: okie dokie
(11:11:22 AM) Kevin Hochhalter: if you have questions call my cell: 206-303-9095
(11:11:34 AM) Kevin Hochhalter: I'll stay on mim but might not be close to the 'puter

Set up new users in the next ui via http://cm.next.marchex.com/ Under the internal users tab.

Make vstactical tarball:

VSTACTICAL_TAG=VSTACTICAL_0_6_138
git archive --remote=git.marchex.com:/src/git/vstactical --format=tar --
prefix=$VSTACTICAL_TAG/ $VSTACTICAL_TAG | gzip -v > 
$VSTACTICAL_TAG.tar.gz

Distribute tarball:

for i in {1..2} ; do sudo cp VSTACTICAL_#_#_##.tar.gz 
/home/cron$i/:~/;done

Unpack tarball:

for i in {2..2} ; do cd /home/cron$i ; sudo gtar -xvzf 
VSTACTICAL_#_#_##.tar.gz ; sudo ln -s VSTACTICAL_#_#_## 
vstactical.new;done

Deploy:

On cron1 and cron2 host: 
Verify extracted tarball from pre-deploy steps 
Note the old symlink ls -l vstactical 
Atomically replace symlinks sudo perl -e 'rename shift, 
shift or die $!' vstactical.new vstactical


Tacticals can be run on either cron1 or cron2.

f@ilBl0g!
grep '19/Oct/2011:17:2' access_log | cut -d " " -f 5 | sort | uniq -c | sort -rn | head -n 10
grep '19/Oct/2011:17:2' access_log | cut -d " " -f 5 | grep -v '^-' | sort | uniq -c | sort -rn | head -n 10

better than tcpdump tshark !

tshark -i bond1 port 5060 -t ad

Pie^c0ch8$ or Pie^C0ch8$

adtrack blacklist stuff

adtrack_ro=> select * from at_penalty_box where number = '7709627220';
number | unassigned_lines | penalty_started | 
current_penalty | blacklist_until 
------------+------------------+-------------------------------+-----------------+------------------------------
7709627220 | 246 | 2011-10-07 09:50:27.672961-04 | 3 mons 
| 2012-02-01 16:31:13.74135-05

*****************************************************

psql -h lb-pool -d adtrack_ro -U pmorris
psql -h lb-pool -d adtrack -U at

\x gets you a nicely formatted display (ugh damn you postgresql)

whitelist a number in adtrack
select * from at_account where name ilike '%NCI%';

Or even this!
select name from at_account where account_id = 'CA6phk1xT0VbwgBK';

begin;


INSERT INTO at_whitelist (number, account_id) VALUES ('<##########>','<use 'global' if global>');
INSERT INTO at_whitelist (number, account_id) VALUES ('<##########>','<use 'global' if global>');
INSERT INTO at_whitelist (number, account_id) VALUES ('<##########>','<hash key>');

select * from at_whitelist where number in ('<##########>','<##########>','<##########>');


commit;

i.e. I want to insert into 

INSERT INTO at_whitelist (number, account_id) VALUES ('5416337625','QrOXy0Q9KMgELQDF');
select * from at_whitelist where number in ('5416337625');

8323160383 QrOX60a7VDtzfwD1


/site/pgsql/pgsql-8.4.4/bin/psql -h lb-pool -d adtrack -U at

UPDATE at_forward_no
SET matchrule = NULL
FROM at_settings
WHERE at_settings.settings_id = at_forward_no.settings_id
AND account_id = 'CA6phk3VXWsSoAG_';
                                                                                                          • dconcepcion@marchex.com
find /mnt/site/backups/* -mtime +15 -exec rm {} \;

Asterisk maintenance stuff

connect to console (change -i to -r from your ps -ef cruft)
sudo /site/asterisk/asterisk-1.6.2.6/sbin/asterisk -C /site/nx-call-proc-ast-conf/conf/asterisk.conf -r

core show calls
sip show channels
sip show channelstats
core stop now
core stop gracefully

NetScaler net scaler

ssh as nsroot to appropriate machine
disable server servername.phl
enable server servername.phl

status


mysql crap

/site/mysql/mysql-5.0.51a/bin/mysqldump -u root -p -S /site/mysql-pike/run/mysql.sock sct3k > sct3k_20110211.sql
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < add_ce_id_and_ce_name_to_coinfo.sql 
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < CE_updates.sql 
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < 110963/update_vantage_links.sql 
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k 
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < 20110330_remove_keiser.sql 
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k 
/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k



/site/mysql/mysql-5.0.51a/bin/mysql --defaults-file=/site/mysql-pike/conf/mysql.conf -u root -p sct3k < Update50statesColleges_12-2011.sql 

kvm build crap:

reset default image location

virsh
pool-destroy default
pool-undefine default
pool-define-as --name default --type dir --target /rum/media/user1/partition1
pool-autostart default
pool-build default
pool-start default

cryptsetup luksChangeKey /dev/mapper/vgsys-imgs1

Force unmount of nfs

sudo umount -f -l /foo/bar
For an Amazon Linux AMI, the user name is ec2-user.

For a Centos AMI, the user name is centos.

For a Debian AMI, the user name is admin or root.

For a Fedora AMI, the user name is ec2-user or fedora.

For a RHEL AMI, the user name is ec2-user or root.

For a SUSE AMI, the user name is ec2-user or root.

For an Ubuntu AMI, the user name is ubuntu or root.

Otherwise, if ec2-user and root don't work, check with the AMI provider.
cat secure | grep "Invalid user" | awk '{print $8}'  | sort | uniq -c | sort -rf | less


Fix "broken java"   comment out the jdk.tls.disabledAlgorithms line
sudo vi /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security

switch branches

git branch mc2-1382-kaldi-asr-ingress origin/mc2-1382-kaldi-asr-ingress
then
git checkout mc2-1382-kaldi-asr-ingress origin

route53 aws cli

aws route53 change-resource-record-sets \
	--hosted-zone-id Z1U05RZDW3PZ3K \
	--change-batch file://./dns/qa/private-marchex.net-elb.json
{
    "ChangeInfo": {
        "Status": "PENDING", 
        "Comment": "Create/Update ELB Private QA Route 53 Entries for marchex.net", 
        "SubmittedAt": "2020-10-07T17:36:18.545Z", 
        "Id": "/change/C0136020ZF5C469VWNKO"
    }
}

aws route53  get-change --id /change/C0136020ZF5C469VWNKO
{
    "ChangeInfo": {
        "Status": "INSYNC", 
        "Comment": "Create/Update ELB Private QA Route 53 Entries for marchex.net", 
        "SubmittedAt": "2020-10-07T17:36:18.545Z", 
        "Id": "/change/C0136020ZF5C469VWNKO"
    }
}
git clone foo
git checkout -b blah1
git commit -a
git push --set-upstream origin blah1

Then go online and submit the branch as a pull request