TestEngineering/Services/LoopTestEnvironments: Difference between revisions
< TestEngineering | Services
Jump to navigation
Jump to search
Rpappalardo (talk | contribs) (long overdue updates (WIP) & updates for msisdn STAGE) |
|||
Line 1: | Line 1: | ||
* | = PRODUCTION Environments = | ||
* | == URLs == | ||
* loop-server: https://loop.services.mozilla.com | |||
* loop-client: https://hello.mozilla.com | |||
* msisdn-gateway: https://msisdn.services.mozilla.com | |||
* QA Access | == Monitoring == | ||
* See below: https://wiki.mozilla.org/QA/Services/LoopTestEnvironments#Monitoring_the_Production_Environment | |||
== Access == | |||
* Restricted to Ops team | |||
* Pointing Fx Nightly to Production | * Pointing Fx Nightly to Production | ||
** NOTE: Fx Nightly is already set to point to Production by default | ** NOTE: Fx Nightly is already set to point to Production by default | ||
== Quick Verifications == | |||
=== loop-server === | |||
In the browser: https://loop.services.mozilla.com | In the browser: https://loop.services.mozilla.com | ||
Note: the default value of "fakeTokBox" is | Note: the default value of "fakeTokBox" is false for the mock server, false for the live server | ||
(both STAGE and PROD now use live server) | |||
In the browser: https://loop.services.mozilla.com/__heartbeat__ | In the browser: https://loop.services.mozilla.com/__heartbeat__ | ||
Line 21: | Line 25: | ||
In the browser: https://loop.services.mozilla.com/push-server-config | In the browser: https://loop.services.mozilla.com/push-server-config | ||
{"pushServerURI":"wss:// | {"pushServerURI":"wss://autopush.services.mozilla.com/"} | ||
curl https://loop.services.mozilla.com | curl https://loop.services.mozilla.com | ||
Note: the default value of "fakeTokBox" is | Note: the default value of "fakeTokBox" is false for the mock server, false for the live server | ||
(both STAGE and PROD now use live server) | |||
curl -I https://loop.services.mozilla.com | curl -I https://loop.services.mozilla.com | ||
=== loop-client === | |||
In the browser: https:// | In the browser: https://hello.mozilla.com | ||
Welcome to the Firefox Hello web client. | Welcome to the Firefox Hello web client. | ||
Browser: https:// | Browser: https://hello.mozilla.com/config.js | ||
now returns all of this info: | now returns all of this info: | ||
var loop = loop || {}; | var loop = loop || {}; | ||
Line 39: | Line 44: | ||
}; | }; | ||
Browser: https:// | Browser: https://hello.mozilla.com/VERSION.txt | ||
TOS: https:// | TOS: https://hello.mozilla.com/legal/terms/ | ||
curl https:// | curl https://hello.mozilla.com/ | ||
returns a page of HTML | returns a page of HTML | ||
curl -I https:// | curl -I https://hello.mozilla.com/ | ||
=== msisdn-gateway === | |||
In the browser: https://msisdn.services.mozilla.com | In the browser: https://msisdn.services.mozilla.com | ||
{"name":"mozilla-msisdn-gateway","description":"The Mozilla MSISDN | {"name":"mozilla-msisdn-gateway","description":"The Mozilla MSISDN | ||
Line 61: | Line 66: | ||
curl -I https://msisdn.services.mozilla.com | curl -I https://msisdn.services.mozilla.com | ||
== | = STAGE Environments = | ||
* URLs | == Access == | ||
* | * Restricted to Ops/Dev/QA teams | ||
* | |||
** | == URLs == | ||
* | * loop-server: https://loop.stage.mozaws.net | ||
* msisdn-gatway (Real: for e2e-test): https://msisdn.stage.mozaws.net (see below) | |||
** | ** uses: Nexmo | ||
* | * msisdn-gateway (Fake: for loadtest): https://msisdn-loadtest.stage.mozaws.net (see below) | ||
** uses: http://omxen.dev.mozaws.net | |||
* loop-client: https://call.stage.mozaws.net | |||
* Sentry: http://sentry.shared.us-east-1.stage.mozaws.net (see below) | |||
== loop-server == | |||
(needs updating) | |||
* URL | * URL | ||
** | ** loop-server: https://loop.stage.mozaws.net | ||
* Versions | * Versions | ||
Line 132: | Line 141: | ||
** /media/ephemeral0/nginx/logs/loop_server.error.log | ** /media/ephemeral0/nginx/logs/loop_server.error.log | ||
* Setting | * Setting STAGE configuration: | ||
** Toggling the config setting to use either a mock server or a third-party server | ** Toggling the config setting to use either a mock server or a third-party server | ||
** File: /data/loop-server/config/settings.json | ** File: /data/loop-server/config/settings.json | ||
Line 147: | Line 156: | ||
In the browser: https://loop.stage.mozaws.net/push-server-config | In the browser: https://loop.stage.mozaws.net/push-server-config | ||
== | == loop-client == | ||
* URL | * URL | ||
** | ** loop-client: https://call.stage.mozaws.net | ||
* Versions | * Versions | ||
Line 234: | Line 222: | ||
curl -I https://call.stage.mozaws.net | curl -I https://call.stage.mozaws.net | ||
Check that | Check that loop-client STAGE is talking to loop-server STAGE | ||
In the browser: https://call.stage.mozaws.net/config.js | In the browser: https://call.stage.mozaws.net/config.js | ||
should return something similar to this | should return something similar to this | ||
Line 243: | Line 231: | ||
}; | }; | ||
* | == msisdn (real server) == | ||
** | * Description | ||
** This server is more-or-less a duplicate of the PRODUCTION one. | |||
** It uses the real Nexmo service | |||
** NOTE: Since Nexmo bills on a per text basis, this server should only be used for e2e testing, | |||
not for loadtesting! | |||
* URL | * URL | ||
** MSISDN Gateway: https://msisdn.stage.mozaws.net | ** MSISDN Gateway: https://msisdn.stage.mozaws.net | ||
Line 339: | Line 297: | ||
curl -I https://msisdn.stage.mozaws.net | curl -I https://msisdn.stage.mozaws.net | ||
== | == msisdn-loadtest (fake server) == | ||
* Description | |||
** This server is uses a fake endpoint (Omxen) and can thus be used for loadtesting | |||
** NOTE: for e2e testing, use the real endpoint instead (see above) | |||
* URL: http://omxen.dev.mozaws.net | * URL: http://omxen.dev.mozaws.net | ||
* Endpoint: http://omxen.dev.mozaws.net/send | * Endpoint: http://omxen.dev.mozaws.net/send | ||
Line 379: | Line 341: | ||
curl -I omxen.dev.mozaws.net | curl -I omxen.dev.mozaws.net | ||
== Sentry Server | |||
= Server Configuration (loop-client & loop-server) = | |||
* /data/loop-server/config/settings.json | |||
* edit configuration file and restart the loop-server in STAGE. | |||
** REFs: | |||
*** https://wiki.mozilla.org/QA/Services/LoopTestEnvironments#Loop_Mock_Server_Stage_Details | |||
* Yaml Files | |||
** /etc/puppet/yaml/app | |||
*** loop_client.dev.yaml | |||
*** loop_client.prod.yaml | |||
*** loop_client.stage.yaml | |||
*** loop_client.yaml | |||
*** loop_server.dev.yaml | |||
*** loop_server.prod.yaml | |||
*** loop_server.stage.yaml | |||
*** loop_server.yaml | |||
= Sentry Server = | |||
== STAGE Details == | |||
* URL | * URL | ||
** http://sentry.shared.us-east-1.stage.mozaws.net | ** http://sentry.shared.us-east-1.stage.mozaws.net | ||
Line 411: | Line 394: | ||
== QA Access via a Bastion Host == | == QA Access via a Bastion Host == | ||
* Old Dev IAM | * Old Dev IAM | ||
** SSH with AWS keys to the | ** SSH with AWS keys to the STAGE bastion host in US-East-1. From there SSH directly into any instance using your LDAP name. For the mock server, log in as "ec2-user". | ||
* New Dev IAM | * New Dev IAM | ||
** SSH with AWS keys to the | ** SSH with AWS keys to the STAGE bastion host in US-East-1 or EU-West-1. From there SSH directly into any instance using your LDAP name. For the mock server, log in as "ec2-user". | ||
== Monitoring | == Monitoring == | ||
== STAGE Environment == | |||
* Sentry: https://sentry.shared.us-east-1.stage.mozaws.net | * Sentry: https://sentry.shared.us-east-1.stage.mozaws.net | ||
** Getting access to Sentry | ** Getting access to Sentry STAGE - talk to the OPs team | ||
* Stackdriver | * Stackdriver | ||
Line 474: | Line 458: | ||
*** https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopUrls/outputs/LoopUrls.FirefoxOS.cbuf | *** https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopUrls/outputs/LoopUrls.FirefoxOS.cbuf | ||
== | === Production Environment === | ||
* Sentry: http://sentry.shared.us-west-2.prod.mozaws.net | * Sentry: http://sentry.shared.us-west-2.prod.mozaws.net | ||
** Getting access to Sentry Prod - talk to the OPs team | ** Getting access to Sentry Prod - talk to the OPs team | ||
Line 494: | Line 478: | ||
** https://heka.shared.us-west-2.prod.mozaws.net/#plugins/filters/MsisdnGatewayHTTPStatus | ** https://heka.shared.us-west-2.prod.mozaws.net/#plugins/filters/MsisdnGatewayHTTPStatus | ||
* | * loop-server Dashboard | ||
** https://metrics.fxa.us-west-2.prod.mozaws.net/loop-server-dashboard | ** https://metrics.fxa.us-west-2.prod.mozaws.net/loop-server-dashboard | ||
Line 502: | Line 486: | ||
* Pingdom: | * Pingdom: | ||
** | ** loop-client: http://stats.pingdom.com/20dar76w4hmv/1304575 | ||
** | ** loop-server: http://stats.pingdom.com/20dar76w4hmv/1304565 | ||
= Loads V1 Services Cluster Environment = | |||
* For details on the Loads V1 cluster, see the following link: | * For details on the Loads V1 cluster, see the following link: | ||
** https://wiki.mozilla.org/QA/Services/LoadsToolsAndTesting1 | ** https://wiki.mozilla.org/QA/Services/LoadsToolsAndTesting1 | ||
= Dev Environment = | |||
* URLs | * URLs | ||
** Server: https://loop-dev.stage.mozaws.net/ | ** Server: https://loop-dev.stage.mozaws.net/ | ||
Line 606: | Line 590: | ||
or similar | or similar | ||
== | = Reference = | ||
== Wikis == | |||
* https://wiki.mozilla.org/CloudServices/Loop | |||
* https://wiki.mozilla.org/CloudServices/Loop/Server | |||
* https://wiki.mozilla.org/Services/Loop | |||
* https://wiki.mozilla.org/Loop | |||
* https://wiki.mozilla.org/Loop/Architecture | |||
* https://wiki.mozilla.org/Loop/Architecture/ID | |||
* https://wiki.mozilla.org/Loop/Telemetry | |||
* Loop MVP Features: https://docs.google.com/a/mozilla.com/spreadsheet/ccc?key=0AlJmiyFngeSwdGJEVnItQ2NVbGx6NXdjbVBUYmIxSGc#gid=0 | |||
* https://people.mozilla.org/~dhenein/labs/loop-docs/ | |||
* https://people.mozilla.org/~dhenein/labs/loop-mvp-spec/ | |||
* https://wiki.mozilla.org/Loop/Architecture/MVP | |||
* settings: https://wiki.mozilla.org/QA/Services/LoopTestEnvironments#Loop_Mock_Server_Stage_Details | |||
* Puppet Config: https://github.com/mozilla-services/puppet-config | |||
* Cloud Formation: https://github.com/mozilla-services/svcops | |||
== Docs == | |||
* https://docs.services.mozilla.com/loop/index.html | |||
* https://docs.services.mozilla.com/loop/apis.html | |||
== Github Repos == | |||
* https://github.com/orgs/mozilla-services/teams/loop | |||
* https://github.com/mozilla-services/loop-server | |||
* https://github.com/mozilla/loop-client | |||
* https://github.com/mozilla/loop-client/releases | |||
* https://github.com/mozilla-services/msisdn-gateway | |||
* https://github.com/mozilla-services/msisdn-gateway/blob/master/API.md | |||
* https://github.com/mozilla/videur | |||
* https://github.com/mozilla/fxa-auth-server/wiki/API-extensions-for-supporting-MSISDN-verification-in-FxA-auth-server | |||
* https://github.com/mozilla/gecko-projects/tree/elm/browser/components/loop/standalone | |||
* https://github.com/mozilla-services/svcops | |||
* https://github.com/mozilla-services/puppet-config | |||
== Bugzilla == | |||
* https://bugzilla.mozilla.org/enter_bug.cgi?product=Loop&component=Server | |||
** Other Products | |||
** Product: Loop | |||
** Component: General/Client/Server | |||
* https://bugzilla.mozilla.org/enter_bug.cgi?product=Mozilla%20Services@component=MobileID | |||
** Client Software | |||
** Product: Mozilla Services | |||
** Component: MobileID | |||
Revision as of 20:52, 19 May 2015
PRODUCTION Environments
URLs
- loop-server: https://loop.services.mozilla.com
- loop-client: https://hello.mozilla.com
- msisdn-gateway: https://msisdn.services.mozilla.com
Monitoring
- See below: https://wiki.mozilla.org/QA/Services/LoopTestEnvironments#Monitoring_the_Production_Environment
Access
- Restricted to Ops team
- Pointing Fx Nightly to Production
- NOTE: Fx Nightly is already set to point to Production by default
Quick Verifications
loop-server
In the browser: https://loop.services.mozilla.com Note: the default value of "fakeTokBox" is false for the mock server, false for the live server (both STAGE and PROD now use live server) In the browser: https://loop.services.mozilla.com/__heartbeat__ {"storage":true,"provider":true} In the browser: https://loop.services.mozilla.com/push-server-config {"pushServerURI":"wss://autopush.services.mozilla.com/"} curl https://loop.services.mozilla.com Note: the default value of "fakeTokBox" is false for the mock server, false for the live server (both STAGE and PROD now use live server) curl -I https://loop.services.mozilla.com
loop-client
In the browser: https://hello.mozilla.com Welcome to the Firefox Hello web client. Browser: https://hello.mozilla.com/config.js now returns all of this info: var loop = loop || {}; loop.config = { bunch of loop-client specific info }; Browser: https://hello.mozilla.com/VERSION.txt TOS: https://hello.mozilla.com/legal/terms/ curl https://hello.mozilla.com/ returns a page of HTML curl -I https://hello.mozilla.com/
msisdn-gateway
In the browser: https://msisdn.services.mozilla.com {"name":"mozilla-msisdn-gateway","description":"The Mozilla MSISDN Gateway","version":"0.3.2","homepage":"https://github.com/mozilla-services/msisdn-gateway" ,"endpoint":"https://msisdn.services.mozilla.com"} curl https://msisdn.services.mozilla.com {"name":"mozilla-msisdn-gateway","description":"The Mozilla MSISDN Gateway","version":"0.3.2","homepage":"https://github.com/mozilla-services/msisdn-gateway" ,"endpoint":"https://msisdn.services.mozilla.com"} curl -I https://msisdn.services.mozilla.com
STAGE Environments
Access
- Restricted to Ops/Dev/QA teams
URLs
- loop-server: https://loop.stage.mozaws.net
- msisdn-gatway (Real: for e2e-test): https://msisdn.stage.mozaws.net (see below)
- uses: Nexmo
- msisdn-gateway (Fake: for loadtest): https://msisdn-loadtest.stage.mozaws.net (see below)
- loop-client: https://call.stage.mozaws.net
- Sentry: http://sentry.shared.us-east-1.stage.mozaws.net (see below)
loop-server
(needs updating)
- URL
- loop-server: https://loop.stage.mozaws.net
- Versions
- rpm -qa | grep loop
- Example:
- loop-server-svcops 0.10.0-1 x86_64 20905864
- puppet-config-loop 20140811172607-1 x86_64 14277
- VERSION.txt
- ./data/loop-server/VERSION.txt
- AWS
- CF stack: loop-server-stage (or similar name)
- ELB: loop-server-st-ELB-<some value>
- One instance: look for "loop-server-stage"
- OS
- Running SciLinux 6.4
- Files
- /data/loop-server
- especially /data/loop-server/config/settings.json
- /data/hekad
- /opt/aws
- /opt/ec2
- /opt/openresty
- /opt/rh
- /opt/stackdriver
- /etc/circus.ini
- /etc/circus.d
- /etc/circus.d/loopserver.ini
- /etc/circus.d/hekad-loop.ini
- /etc/puppet/*
- especially /etc/puppet/yaml/app
- /etc/puppet/yaml/app/loop_server.dev.yaml
- /etc/puppet/yaml/app/loop_server.prod.yaml
- /etc/puppet/yaml/app/loop_server.stage.yaml
- /etc/puppet/yaml/app/loop_server.yaml
- /var/log/*
- /data/loop-server
- Processes
- node loop/index.js
- stackdriver
- circusd
- heka.d
- nginx
- Logs
- /var/log/circus.log
- /var/log/hekad/loop.stdout.log
- /var/log/hekad/loop.stderr.log
- /media/ephemeral0/circus/loop_server/loop_server.err.log
- /media/ephemeral0/circus/loop_server/loop_server.eout.log
- /media/ephemeral0/nginx/logs/default.access.log (not in use)
- /media/ephemeral0/nginx/logs/default.error.log (not in use)
- /media/ephemeral0/nginx/logs/loop_server.access.log
- /media/ephemeral0/nginx/logs/loop_server.error.log
- Setting STAGE configuration:
- Toggling the config setting to use either a mock server or a third-party server
- File: /data/loop-server/config/settings.json
- Quick Verifications
curl https://loop.stage.mozaws.net curl -I https://loop.stage.mozaws.net In the browser: https://loop.stage.mozaws.net/ In the browser: https://loop.stage.mozaws.net/__heartbeat__ In the browser: https://loop.stage.mozaws.net/push-server-config
loop-client
- URL
- loop-client: https://call.stage.mozaws.net
- Versions
- rpm -qa | grep loop
- VERSION.txt
- /data/loop-client/content/VERSION.txt
- AWS
- CF Stack: look for four loop-client-* stacks
- ELB: loopstage1-loo-ELB-<some value>
- One loop-client instance: look for "loop-client app server"
- OS
- Scientific Linux release 6.4 or 6.5
- Files
- /opt/aws
- /opt/ec2
- /opt/openresty
- /opt/rh
- /opt/stackdriver
- /data/loop-client
- especially /data/loop-client/content/config.js
- Note: this does not contain any app-specific config file in the config directory
- /data/hekad
- /etc/heka.d
- /etc/puppet/yaml
- especially the following files
- /etc/puppet/yaml/app/loop_client.dev.yaml
- /etc/puppet/yaml/app/loop_client.prod.yaml
- /etc/puppet/yaml/app/loop_client.stage.yaml
- /etc/puppet/yaml/app/loop_client.yaml
- Processes
- look for stackdriver, nginx, python, circus, heka
- Logs
- /var/log/circus.log
- /var/log/hekad/loop-client.stderr.log
- /var/log/hekad/loop-client.stderr.log
- /media/ephemeral0/nginx/logs
- default.access.log
- default.error.log
- loop-client.access.log
- loop-client.error.log
- Heka
- /data/hekad
- /etc/heka.d
- Quick Verifications
In the browser: https://call.stage.mozaws.net Welcome to the Firefox Hello web client. Check the version: https://call.stage.mozaws.net/VERSION.txt Check the TOS: https://call.stage.mozaws.net/legal/terms/ curl https://call.stage.mozaws.net curl -I https://call.stage.mozaws.net Check that loop-client STAGE is talking to loop-server STAGE In the browser: https://call.stage.mozaws.net/config.js should return something similar to this var loop = loop || {}; loop.config = { serverUrl: 'https://loop.stage.mozaws.net', and a bunch of other loop-client specific stuff };
msisdn (real server)
- Description
- This server is more-or-less a duplicate of the PRODUCTION one.
- It uses the real Nexmo service
- NOTE: Since Nexmo bills on a per text basis, this server should only be used for e2e testing,
not for loadtesting!
- URL
- MSISDN Gateway: https://msisdn.stage.mozaws.net
- Versions
- rpm -qa | grep msisdn
- Version string
- /data/msisdn-gateway/VERSION.txt
- AWS
- CF Stack: msisdn-gateway-stage or msisdnstage1
- ELB: msisdn-gateway-ELB-<SOME VALUE> or msisdnstage1-m-ELB-<SOME VALUE>
- Currently one m3.medium instance, look for msisdn-gateway
- OS
- Scientific Linux release 6.4 (Carbon)
- Files
- /opt/aws
- /opt/ec2
- /opt/openresty
- /opt/rh
- /opt/stackdriver
- /data/hekad
- /data/msisdn-gateway
- /etc/puppet/yaml/app, especially
- msisdn_gateway.dev.yaml
- msisdn_gateway.prod.yaml
- msisdn_gateway.stage.yaml
- msisdn_gateway.yaml
- Processes
- Look for stackdriver, python, circus, resty, nginx, node, heka
- Logs
- /media/ephemeral0/msisdn-gateway/msisdn-gateway_err.log
- /media/ephemeral0/msisdn-gateway/msisdn-gateway_out.log
- /media/ephemeral0/nginx/logs/default.access.log (not in use)
- /media/ephemeral0/nginx/logs/default.error.log (not in use)
- /media/ephemeral0/nginx/logs/msisdn-gateway.access.log
- /media/ephemeral0/nginx/logs/msisdn-gateway.error.log
- /var/log/circus.log
- /var/log/hekad/msisdn_gateway.stderr.log
- /var/log/hekad/msisdn_gateway.stdout.log
- Configuration File
- /data/msisdn-gateway/config/production.json
- Quick Verifications
In the browser: https://msisdn.stage.mozaws.net In the browser: https://msisdn.stage.mozaws.net/__heartbeat__ returns {"storage":true} curl https://msisdn.stage.mozaws.net curl -I https://msisdn.stage.mozaws.net
msisdn-loadtest (fake server)
- Description
- This server is uses a fake endpoint (Omxen) and can thus be used for loadtesting
- NOTE: for e2e testing, use the real endpoint instead (see above)
- URL: http://omxen.dev.mozaws.net
- Endpoint: http://omxen.dev.mozaws.net/send
- AWS
- This is in the new Dev IAM
- This is one t2.small
- Look for omxen.dev.mozaws.net
- Access: SSH
- OS
- Amazon Linux AMI release 2014.03
- Versions
- TBD
- Processes
- Look for nginx, python, omxen
- Files
- /home/ec2-user/omxen
- /opt/aws
- Logs
- /var/log/nginx
- Use: sudo cat nginx/*.log, etc
- Restarting
- TBD
- Quick Verifications
In the browser, http://omxen.dev.mozaws.net/ OMXEN SMS GATEWAY curl omxen.dev.mozaws.net OMXEN SMS GATEWAY curl -I omxen.dev.mozaws.net
Server Configuration (loop-client & loop-server)
- /data/loop-server/config/settings.json
- edit configuration file and restart the loop-server in STAGE.
- Yaml Files
- /etc/puppet/yaml/app
- loop_client.dev.yaml
- loop_client.prod.yaml
- loop_client.stage.yaml
- loop_client.yaml
- loop_server.dev.yaml
- loop_server.prod.yaml
- loop_server.stage.yaml
- loop_server.yaml
- /etc/puppet/yaml/app
Sentry Server
STAGE Details
- Versions
- rpm -qa | grep sentry
- AWS
- TBD
- OS
- Scientific Linux release 6.3
- Files
- /opt/sentry
- Processes
- root /usr/bin/python /usr/bin/circusd --log-output /var/log/circus.log --pidfile /var/run/
- apache /opt/sentry/bin/python /opt/sentry/bin/sentry --config=/etc/sentry.d/sentry.shared.us-east-1.stage.mozaws.net.py start ud
- Logs
- /var/log
- nothing in /media/ephemeral0
- Heka
- TBD
- Quick Verifications
- For now, just verify the service is running on the host: ps aux | grep sentry
QA Access via a Bastion Host
- Old Dev IAM
- SSH with AWS keys to the STAGE bastion host in US-East-1. From there SSH directly into any instance using your LDAP name. For the mock server, log in as "ec2-user".
- New Dev IAM
- SSH with AWS keys to the STAGE bastion host in US-East-1 or EU-West-1. From there SSH directly into any instance using your LDAP name. For the mock server, log in as "ec2-user".
Monitoring
STAGE Environment
- Sentry: https://sentry.shared.us-east-1.stage.mozaws.net
- Getting access to Sentry STAGE - talk to the OPs team
- Stackdriver
- Graphite
- https://graphite.shared.us-east-1.stage.mozaws.net
- Graphite > stats > loop-activated-users
- Graphite > stats > loop-call-urls
- User Graphs > not currently defined
- https://graphite.shared.us-east-1.stage.mozaws.net
- Kibana:
- Heka
- https://heka.shared.us-east-1.stage.mozaws.net/
- (or https://heka.shared.us-east-1.stage.mozaws.net/#health)
- PlugIns - Filters
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/filters/LoopBasicMetrics
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/filters/LoopHTTPStatus
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/filters/LoopActiveDailyCallers
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/filters/LoopTotalUsers
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/filters/LoopUrls
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/filters/LoopActiveDailySubscribers
- PlugIns - Outputs
- PlugIns - Encoders
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/encoders/LoopNginxFileOutput-ProtobufEncoder
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/encoders/LoopNginxErrorFileOutput-ProtobufEncoder
- https://heka.shared.us-east-1.stage.mozaws.net/#plugins/encoders/LoopServerFileOutput-ProtobufEncoder
- Sandboxes
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_total_callers.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_cumulative_callers.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_daily_unique_callers.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_daily_unique_subscribers.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_new_callers.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_weekly_recurring.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_fortnightly_recurring.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_monthly_recurring.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_urls_clicked.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopBasicMetrics/outputs/LoopBasicMetrics.loop_urls_generated.json
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopHTTPStatus/outputs/LoopHTTPStatus.HTTPStatus.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopActiveDailyCallers/outputs/LoopActiveDailyCallers.EstimatedActiveDailyCallers.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopActiveDailyCallers/outputs/LoopActiveDailyCallers.EstimatedActiveDailyFxOSCallers.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopTotalUsers/outputs/LoopTotalUsers.EstimatedTotalUsers.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopTotalUsers/outputs/LoopTotalUsers.EstimatedTotalFxOSUsers.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopActiveDailySubscribers/outputs/LoopActiveDailySubscribers.EstimatedActiveDailySubscribers.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopActiveDailySubscribers/outputs/LoopActiveDailySubscribers.EstimatedActiveDailyFxOSSubscribers.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopUrls/outputs/LoopUrls.All.cbuf
- https://heka.shared.us-east-1.stage.mozaws.net/#sandboxes/LoopUrls/outputs/LoopUrls.FirefoxOS.cbuf
- PlugIns - Filters
Production Environment
- Sentry: http://sentry.shared.us-west-2.prod.mozaws.net
- Getting access to Sentry Prod - talk to the OPs team
- http://sentry.shared.us-west-2.prod.mozaws.net/loop-prod/
- http://sentry.shared.us-west-2.prod.mozaws.net/loop-prod/loop/
- Kibana:
- Heka:
- Main: https://heka.shared.us-west-2.prod.mozaws.net/#
- https://heka.shared.us-west-2.prod.mozaws.net/#plugins/filters/LoopActiveDailyUsers
- https://heka.shared.us-west-2.prod.mozaws.net/#plugins/filters/LoopHTTPStatus
- https://heka.shared.us-west-2.prod.mozaws.net/#plugins/filters/MsisdnGatewayHTTPStatus
- loop-server Dashboard
- Graphite: https://graphite.shared.us-west-2.prod.mozaws.net (statsd data)
- Firefox Input Dashboard: https://input.mozilla.org/en-US/?product=Loop
- Pingdom:
- loop-client: http://stats.pingdom.com/20dar76w4hmv/1304575
- loop-server: http://stats.pingdom.com/20dar76w4hmv/1304565
Loads V1 Services Cluster Environment
- For details on the Loads V1 cluster, see the following link:
Dev Environment
- URLs
- Server: https://loop-dev.stage.mozaws.net/
- Client: http://loop-webapp.dev.mozaws.net/
- Server: https://msisdn-dev.stage.mozaws.net/
- Versions
- TBD
- AWS
- CF Stack: ulfr-devstack-loop
- ELB: ulfr-devstack-ELB-<some value>
- One instance: search for "loop app server (ulfr-devstack-loop)"
- CF Stack: bwong-msisdn-dev
- ELB: bwong-msisdn-d-ELB-<some value>
- One instance: search for "msisdn_gateway server (bwong-msisdn-dev)"
- OS
- TBD
- Files
- TBD
- Processes
- TBD
- Logs
- TBD
- Heka
- TBD
- Quick Verifications
http://loop.dev.mozaws.net Returns { "name": "mozilla-loop-server", "description": "The Mozilla Loop (WebRTC App) server", "version": "0.7.0", "homepage": "https://github.com/mozilla-services/loop-server/", "endpoint": "http://loop.dev.mozaws.net", "fakeTokBox": false } or similar http://loop.dev.mozaws.net/__heartbeat__ Returns { "storage": true, "provider": false } or similar
http://loop-webapp.dev.mozaws.net Returns Loop Welcome to the Loop web client. http://loop-webapp.dev.mozaws.net/__heartbeat__ Returns 404
http://msisdn.dev.mozaws.net Returns { "name": "mozilla-msisdn-gateway", "description": "The Mozilla MSISDN Gateway", "version": "0.3.0-DEV", "homepage": "https://github.com/mozilla-services/msisdn-gateway/", "endpoint": "https://msisdn.dev.mozaws.net" } or similar http://msisdn.dev.mozaws.net/__heartbeat__ Returns { "storage": true } or similar
https://msisdn-dev.stage.mozaws.net Returns { "name": "mozilla-msisdn-gateway", "description": "The Mozilla MSISDN Gateway", "version": "0.3.0-DEV", "homepage": "https://github.com/mozilla-services/msisdn-gateway/", "endpoint": "https://msisdn-dev.stage.mozaws.net" } or similar https://msisdn-dev.stage.mozaws.net/__heartbeat__ Returns { "storage": true } or similar
Reference
Wikis
- https://wiki.mozilla.org/CloudServices/Loop
- https://wiki.mozilla.org/CloudServices/Loop/Server
- https://wiki.mozilla.org/Services/Loop
- https://wiki.mozilla.org/Loop
- https://wiki.mozilla.org/Loop/Architecture
- https://wiki.mozilla.org/Loop/Architecture/ID
- https://wiki.mozilla.org/Loop/Telemetry
- Loop MVP Features: https://docs.google.com/a/mozilla.com/spreadsheet/ccc?key=0AlJmiyFngeSwdGJEVnItQ2NVbGx6NXdjbVBUYmIxSGc#gid=0
- https://people.mozilla.org/~dhenein/labs/loop-docs/
- https://people.mozilla.org/~dhenein/labs/loop-mvp-spec/
- https://wiki.mozilla.org/Loop/Architecture/MVP
- settings: https://wiki.mozilla.org/QA/Services/LoopTestEnvironments#Loop_Mock_Server_Stage_Details
- Puppet Config: https://github.com/mozilla-services/puppet-config
- Cloud Formation: https://github.com/mozilla-services/svcops
Docs
Github Repos
- https://github.com/orgs/mozilla-services/teams/loop
- https://github.com/mozilla-services/loop-server
- https://github.com/mozilla/loop-client
- https://github.com/mozilla/loop-client/releases
- https://github.com/mozilla-services/msisdn-gateway
- https://github.com/mozilla-services/msisdn-gateway/blob/master/API.md
- https://github.com/mozilla/videur
- https://github.com/mozilla/fxa-auth-server/wiki/API-extensions-for-supporting-MSISDN-verification-in-FxA-auth-server
- https://github.com/mozilla/gecko-projects/tree/elm/browser/components/loop/standalone
- https://github.com/mozilla-services/svcops
- https://github.com/mozilla-services/puppet-config
Bugzilla
- https://bugzilla.mozilla.org/enter_bug.cgi?product=Loop&component=Server
- Other Products
- Product: Loop
- Component: General/Client/Server
- https://bugzilla.mozilla.org/enter_bug.cgi?product=Mozilla%20Services@component=MobileID
- Client Software
- Product: Mozilla Services
- Component: MobileID