This commit is contained in:
Correl Roush 2021-11-02 23:49:10 -04:00
parent e27ce8495c
commit 39e96524af
7 changed files with 310 additions and 8 deletions

View file

@ -14,8 +14,7 @@
* Priorities
#+BEGIN: columnview :id global :match "TODO=\"TODO\""
| ITEM | JIRA_ID |
|------------------------------------------------+---------------|
| Deploy GeoIP to Kubernetes | CCPANEL-11592 |
|------------------------------------------------+---------|
| Create the [[id:11edd6c9-b976-403b-a419-b5542ddedaae][Subscriber Search Service]] | |
| Create the [[id:c45881de-46f2-4f76-9579-063626c5956c][Analytics View Service]] | |
| [[id:619b6c78-7be9-4ee4-a0b7-9d1a4d7536e2][Migrating services to use the new List service]] | |

View file

@ -67,18 +67,51 @@ This service will need to fulfill the needs of both end-user subscriber searches
and segment emailing.
* Plan
** Search Centralization
:PROPERTIES:
:COLUMNS: %40ITEM %Effort{:}
:END:
#+BEGIN: columnview :id local
| ITEM | Effort |
|--------------------------------------------------------+----------|
| Plan | 18d 0:00 |
| Search Centralization | 18d 0:00 |
| Expose search inputs backed with the existing database | 2d |
| Enable dblink on the search master database | 2d |
| Create new unlogged search results table | 2d |
| Define the search result format | 1d |
| Perform search using new search DSL | 5d |
| Perform search using legacy segment ID | 3d |
| Manage segments using the existing database | 3d |
| Migrate to an updated schema | |
| Migrate to new search service | |
| Create new subscriber management React application | |
| Update broadcast-segment to use new search service | |
| Milestone 3: Add new search features | |
#+END:
** Search Centralization
*** Expose search inputs backed with the existing database
:PROPERTIES:
:Effort: 2d
:END:
- Include IDs required to build existing POST format
*** Enable dblink on the search master database
:PROPERTIES:
:Effort: 2d
:END:
[[jira:CCPANEL-7147][CCPANEL-7147]]
*** Create new unlogged search results table
:PROPERTIES:
:Effort: 2d
:END:
https://jira.aweber.io/browse/CCPANEL-7077
*** Define the search result format
:PROPERTIES:
:Effort: 1d
:END:
https://xd.adobe.com/view/ae8fb2b2-c039-4e88-8ade-ff2562a8c8cf-fbdc/screen/c03f09c7-187e-4a6f-8b8c-571d131daee1/ (ignore engagement column)
- name
@ -88,9 +121,18 @@ https://xd.adobe.com/view/ae8fb2b2-c039-4e88-8ade-ff2562a8c8cf-fbdc/screen/c03f0
- date added
- last updated
*** Perform search using new search DSL
:PROPERTIES:
:Effort: 5d
:END:
*** Perform search using legacy segment ID
:PROPERTIES:
:Effort: 3d
:END:
- Include flags for broadcast segment-required filtering?
*** Manage segments using the existing database
:PROPERTIES:
:Effort: 3d
:END:
- Translate a DSL search into a legacy stored segment
** Migrate to an updated schema
** Migrate to new search service

View file

@ -2,3 +2,170 @@
:ID: c45881de-46f2-4f76-9579-063626c5956c
:END:
#+title: Analytics View Service
* Plan
:PROPERTIES:
:COLUMNS: %40ITEM %Effort{:}
:END:
#+BEGIN: columnview :id local
| ITEM | Effort |
|-----------------------------------------------+----------|
| Plan | 19d 4:00 |
| Create the analytics view service | 2d |
| Create the analytics view service playbook | 4h |
| Plan API structure | |
| Create endpoints for existing reports | 17d 0:00 |
| Opens | 1d |
| Clicks | 1d |
| Sales | 1d |
| Sales Totals | 1d |
| Sale Currencies | 1d |
| Sale Events | 1d |
| Lifetime Sales | 1d |
| Pending Broadcasts | 1d |
| Completed Broadcasts | 1d |
| Cities, States, and Countries | 1d |
| Followups | 1d |
| New Subscribers Daily | 1d |
| New Subscribers Weekly | 1d |
| New Subscribers Monthly | 1d |
| Subscriber Totals Daily | 1d |
| Subscriber Totals Weekly | 1d |
| Subscriber Totals Monthly | 1d |
| Migrate reports to the Analytics View Service | |
#+END:
** Create the analytics view service
:PROPERTIES:
:Effort: 2d
:END:
- New project using cookie cutter
- Deployed to kubernetes
- Grafana dashboard created
** Create the analytics view service playbook
:PROPERTIES:
:Effort: 4h
:END:
** Plan API structure
- Pathing (=/reports/*=)?
- Report versioning? (=/reports/{name}.v{version}=)?
** Create endpoints for existing reports
- Based on the endpoints provided in the [[id:3ddc4e32-932f-4748-bfe9-7025d4d6b352][Report API Controller]]
- Are all of these report endpoints in use?
*** Opens
:PROPERTIES:
:Effort: 1d
:END:
- List
- Account-wide
- By list
- Time
- Last 30 days
- 30 day range
*** Clicks
:PROPERTIES:
:Effort: 1d
:END:
- List
- Account-wide
- By list
- Time
- Last 30 days
- 30 day range
*** Sales
:PROPERTIES:
:Effort: 1d
:END:
- Time
- Last 30 days
- 30 day range
- Currency
*** Sales Totals
:PROPERTIES:
:Effort: 1d
:END:
- Time
- Last 60 days
- 60 day range
*** Sale Currencies
:PROPERTIES:
:Effort: 1d
:END:
- Time
- 60 day range
- All time
*** Sale Events
:PROPERTIES:
:Effort: 1d
:END:
- Time
- Last 30 days
- 30 day range
- Currency
- Type
*** Lifetime Sales
:PROPERTIES:
:Effort: 1d
:END:
- Currency
*** Pending Broadcasts
:PROPERTIES:
:Effort: 1d
:END:
*** Completed Broadcasts
:PROPERTIES:
:Effort: 1d
:END:
- List
- Account-wide
- By list
- Time
- All time
- 30 day range
*** Cities, States, and Countries
:PROPERTIES:
:Effort: 1d
:END:
*** Followups
:PROPERTIES:
:Effort: 1d
:END:
*** New Subscribers Daily
:PROPERTIES:
:Effort: 1d
:END:
*** New Subscribers Weekly
:PROPERTIES:
:Effort: 1d
:END:
*** New Subscribers Monthly
:PROPERTIES:
:Effort: 1d
:END:
*** Subscriber Totals Daily
:PROPERTIES:
:Effort: 1d
:END:
*** Subscriber Totals Weekly
:PROPERTIES:
:Effort: 1d
:END:
*** Subscriber Totals Monthly
:PROPERTIES:
:Effort: 1d
:END:
** Migrate reports to the Analytics View Service

View file

@ -3,3 +3,6 @@
:ROAM_REFS: https://gitlab.aweber.io/CP/applications/sites/-/blob/master/aweber_app/controllers/report_api_controller.php
:END:
#+title: Report API Controller
Contains JSON report endpoints used by the [[id:fab0cf8f-7c54-4848-882b-dba5e087760d][Redesigned Reports]]. These make use of
the App and Analytics databases.

View file

@ -1,16 +1,21 @@
#+TITLE: Correl Roush's Org Roam Notes
- [[file:20211013162152-addlead.org][Addlead]]
- [[file:20210915133101-analytics_view_service.org][Analytics View Service]]
- [[file:20210914144833-broadcast_segment_search.org][Broadcast Segment Search]]
- [[file:20210921090818-bulk_tagging_service.org][Bulk Tagging Service]]
- [[file:20211019140007-cp_leads_and_product_sync_up.org][CP Leads and Product Sync-Up]]
- [[file:20210323162555-cleaning_up_public_endpoints_in_proxy_services.org][Cleaning up public endpoints in proxy services]]
- [[file:20210512133000-cobrowse_io.org][Cobrowse.io]]
- [[file:20200714141314-control_panel.org][Control Panel]]
- [[file:20210210113027-control_panel_http_requests.org][Control Panel HTTP Requests]]
- [[file:20200713131512-coreapi.org][CoreAPI]]
- [[file:20200714141333-corporate_notifications.org][Corporate Notifications]]
- [[file:20211011102943-creating_remarkable_experiences_via_application_support_engineering.org][Creating Remarkable Experiences via Application Support Engineering]]
- [[file:20210916162334-ceeecs.org][Customer Empathy and Excellence via Customer Solutions]]
- [[file:20210928132316-dashboard.org][Dashboard]]
- [[file:20211026141640-decommissioning_sites.org][Decommissioning Sites]]
- [[file:20211019163502-deploy_coreapi_to_kubernetes.org][Deploy CoreAPI to Kubernetes]]
- [[file:20210826152454-deploying_bulk_tagging_to_kubernetes.org][Deploying Bulk Tagging to Kubernetes]]
- [[file:20210810095435-deploying_s4_to_kubernetes.org][Deploying S4 to Kubernetes]]
- [[file:20210714102625-deploying_projects.org][Deploying projects]]
@ -20,7 +25,9 @@
- [[file:20210324133247-imbi.org][Imbi]]
- [[file:20200714212153-login_throttling.org][Login Throttling]]
- [[file:20200714130151-mail_relay.org][Mail Relay]]
- [[file:20211019142241-manager_one_on_one.org][Manager one-on-one]]
- [[file:20210520114208-migrating_aws_services.org][Migrating AWS services]]
- [[file:20211019163438-migrating_services_to_use_the_new_list_service.org][Migrating services to use the new List service]]
- [[file:20200713131302-migration_to_common_rabbitmq.org][Migration to common RabbitMQ]]
- [[file:20210928155832-translating_the_search_dsl.org][Modeling the new search DSL]]
- [[file:20200714141221-momentum.org][Momentum]]
@ -33,21 +40,29 @@
- [[file:20201022141542-python_services.org][Python Services]]
- [[file:20210512093626-rebuild_unsubscribe_page_as_a_react_application.org][Rebuild Unsubscribe Page as a React Application]]
- [[file:20210127141844-recurring_and_split_stripe_payments.org][Recurring and split Stripe payments]]
- [[file:20211020091712-redash.org][Redash]]
- [[file:20210915132045-redesigned_reports.org][Redesigned Reports]]
- [[file:20200714143255-refunding_an_order.org][Refunding an Order]]
- [[file:20210915133448-report_api_controller.org][Report API Controller]]
- [[file:sites-release.org][Sites Releases]]
- [[file:20210914143542-sites_subscriber_search.org][Sites Subscriber Search]]
- [[file:20211013143400-staging_account_information.org][Staging account information]]
- [[file:20210302135423-stripe_api.org][Stripe API]]
- [[file:20210112104838-stripe_payments_service.org][Stripe Payments Service]]
- [[file:20210630150008-stripe_poller.org][Stripe Poller]]
- [[file:20210316155320-stripe_payments_tracking_database.org][Stripe payments tracking database]]
- [[file:20211013162215-subscriber_proxy_service.org][Subscriber Proxy Service]]
- [[file:20210914142000-subscriber_search_service.org][Subscriber Search Service]]
- [[file:20210629133542-supporting_multiple_currencies_in_stripe.org][Supporting multiple currencies in Stripe]]
- [[file:20210706161607-supporting_multiple_time_zones.org][Supporting multiple time zones]]
- [[file:20210920134622-suspicious_submission_spam_service.org][Suspicious Submission Spam Service]]
- [[file:20211005153555-tag_publisher_consumer.org][Tag Publisher Consumer]]
- [[file:20210318112158-tagging_roadmap.org][Tagging Roadmap]]
- [[file:20211005153541-tagging_service.org][Tagging Service]]
- [[file:20210714105000-team_member_onboarding.org][Team Member Onboarding]]
- [[file:20211005091910-tech_initiative_workshop.org][Tech Initiative Workshop]]
- [[file:20210323162325-technical_initiative.org][Technical Initiative]]
- [[file:20211001095858-tracking_progress_of_moving_pages_out_of_sites.org][Tracking progress of moving pages out of Sites]]
- [[file:20210406120229-troubleshooting_an_unresolvable_kubernetes_service_hostname.org][Troubleshooting an unresolvable kubernetes service hostname]]
- [[file:20211013161201-validating_and_sanitizing_tags.org][Validating and sanitizing tags]]
- [[file:20211022094829-validation_and_sanitization_guidelines.org][Validation and Sanitization Guidelines]]

37
daily/2021-11-01.org Normal file
View file

@ -0,0 +1,37 @@
:PROPERTIES:
:ID: df7f3d8a-1f67-4325-bb31-669e85301dd2
:END:
#+title: 2021-11-01
* Set dates for upcoming projects
Define target dates for the [[id:11edd6c9-b976-403b-a419-b5542ddedaae][Subscriber Search Service]] and [[id:c45881de-46f2-4f76-9579-063626c5956c][Analytics View Service]]
#+name: services
| Service | Estimated Effort (days) | * 1.5 developers |
|-------------------+-------------------------+------------------|
| Subscriber Search | 18 | 12. |
| Analytics View | 19.5 | 13. |
|-------------------+-------------------------+------------------|
| | 37.5 | 25. |
#+TBLFM: @>$2=vsum(@2..@-1)::$3=$2 / 1.5
Assuming we start next sprint ([2021-11-15 Mon]) I expect both projects to be
done by [2021-12-24 Fri] - [2022-01-14 Fri] (adding an additional week to
account for holiday time). Assuming they are worked sequentially, I expect the
first to be completed by [2021-12-03 Fri] - [2021-12-10 Fri]. In these estimates
I'm assuming approximately three to four weeks of effort each.
* Plan for analytics search testing
Postgres upgrades are planned for the analytics search database. The database is
expected to be maintained behind the =anasearch.service.staging.consul=
hostname, which the [[id:57ee2f00-9bcd-4e0f-8a77-ae1f2d4cda89][Control Panel]] is already configured to be using.
* Planning future backend work
Meeting with Scott and Eric.
| Number clicked column to account backup | 4h |
| CSLead Tickets | EOW |
| Tagbox upgrades | EOW |
| Remove outbound tag sanitization | EOW |
| Analytics search testing | ??? |
| OpenAPI newline pattern validation | Tomorrow |
| Start on Search Service | Next week |

39
daily/2021-11-02.org Normal file
View file

@ -0,0 +1,39 @@
:PROPERTIES:
:ID: 8997222c-48b6-454e-ae81-0f73197dba9e
:END:
#+title: 2021-11-02
* Updating projects using Tagbox
- New version of Tagbox is 5.0.4 (AWeberUI 8.7)
- Aweber UI is updated, includes other breaking changes
- Adobe spectrum resource picker breaks stuff (present in some versions)
- Sites is already updated
** Notes on upgrading AWeberUI
Target versions:
- =@aw-int/components= :: =^9.0.5=
- =@aw-int/icons= :: =^8.3.0=
- =@aw-int/aweber-webapp-scripts= :: =^10.8.0=
** Projects
*** TODO Campaign Builder (Direct)
- Tagbox :: 5.0.3
*** TODO GoToWebinar Client (Direct)
- Tagbox :: 3.0.0
*** TODO Subscriber Import (Direct)
- Tagbox :: 5.0.3
- AWeberUI :: 2
Uses ramda, etc.
*** DONE List Automation Client (AWeberUI)
- AWeberUI :: 8.3
*** NO User Management Client (AWeberUI)
*** WAIT Landing Page Editor (AWeberUI)
*** TODO Draft Bin (Direct)
- Tagbox :: 5.0.0
*** WAIT Subscribers Client (AWeber UI)
- AWeberUI :: 8.6.1
*** TODO Webform Generator (Standalone file)
- Tagbox :: 5.0.3
*** WAIT Integrations Platform Client (AWeberUI)
- AWeberUI :: 5.14.0
*** TODO Tag Management Client (Direct)
- Tagbox :: 5.0.3