AWS |
lambdaタグが付けられた新着投稿 - Qiita |
aws-vaultを使ってAWS SAMのデプロイを行ってみる |
https://qiita.com/abemaru/items/b5deac7a218475e75ca1
|
awssam |
2022-08-20 00:47:29 |
AWS |
AWSタグが付けられた新着投稿 - Qiita |
aws-vaultを使ってAWS SAMのデプロイを行ってみる |
https://qiita.com/abemaru/items/b5deac7a218475e75ca1
|
awssam |
2022-08-20 00:47:29 |
技術ブログ |
Developers.IO |
IAMユーザーのパス設定を変更してみる |
https://dev.classmethod.jp/articles/change-iam-user-path/
|
testu |
2022-08-19 15:39:23 |
海外TECH |
DEV Community |
GMAIL to Discord Channel Webhook Tutorial |
https://dev.to/soom/gmail-to-discord-channel-webhook-tutorial-mnm
|
GMAIL to Discord Channel Webhook Tutorial Abstract프로젝트를진행하면서Slack Microsoft Teams Discord 등커뮤니케이션툴은원활한프로젝트진행을위해필수적인요소중에하나다 특히 게임보조도구로알려진Discord의경우퍼포먼스에민감한게이머들을만족시키는강력한커뮤니케이션기능을가지고있다보니이를프로젝트메인커뮤니케이션툴로사용하는경우도점점증가하고있다 이번포스팅에서는팀메일이나공식메일이올때마다메일을확인하는것이아닌Discord의하나의채널에서알림이올수있도록웹훅설정을하는과정을소개하고자한다 Discord DOCs 링크 Prerequisite여기서는Discord 계정이있고서버를생성한상태를가정한다서버에해당하는웹훅권한이필요하다 웹훅권한설정 Getting StartedIntegrations 메뉴에서Webhooks 생성을클릭 Integrations 메뉴New Webhook을선택해서새로운Webhook을생성한뒤필요한정보 Bot Name Channel 를입력해서Noti Bot을생성Discord 세팅은여기까지완료 Webhook 생성구글앱스크립트페이지접속 새프로젝트생성 구글앱스크립트메인화면 메인대쉬보드새로운프로젝트에다음과같이코드를작성 Notewebhooks 변수에는Discord의Webhook URL을입력 Webhook 생성화면channel 변수에는채널이름을등록 Discord 채널명searchQuery 에는구글메일에서쓰는검색쿼리를사용한다 하기이미지참조 Gmail 쿼리검색Gmail에서는Discord에 자이상되는내용을게시할수없기때문에 자넘는경우제한하는로직이필요하다 code gsfunction postDiscord postMessage const webhooks webhook id webhook token const channel channel name const parse full const method post const payload channel channel content postMessage parse parse const params method method payload payload muteHttpExceptions true response UrlFetchApp fetch webhooks params function sendMailsToDiscord const searchQuery gmail query const date new Date const checkSpan date setMinutes date getMinutes checkSpan const threads GmailApp search searchQuery const msgs GmailApp getMessagesForThreads threads for let i i lt msgs length i const lastMsgDate threads i getLastMessageDate if lastMsgDate getTime lt date getTime break for let j j lt msgs i length j const msgDate msgs i j getDate const msgBody msgs i j getPlainBody const subject msgs i j getSubject const postMessage From mailing list n Utilities formatDate msgDate America New York MM DD yyyy hh mm ss n Title subject n hr msgBody Characters limits if postMessage length gt const stopPos const msg Exceeded character limit postMessage postMessage substring stopPos n msg postDiscord postMessage trigger 를설정이후새로운메일이올경우지정한채널에새로운메세지가푸시될것이다 Note실행할함수를선택 sendMailsToDiscord실행할배포 Head이벤트소스선택 시간기반트리거기반시간유형선택 분단위타이머분간격선택 분마다트리거실패알림설정 즉시알림 trigger 화면 Conclusion본포스팅에서는GMAIL에서Discord 채널에새로운메일이올때마다푸시하는webhook을Google App Script를통해Set up해보았다 Discord는퍼포먼스에민감한게이머를만족시킬수있을정도의수준의서비스를제공하고있고앞으로여러프로젝트에서도많이쓰일것이다 여기에전세계메일의표준이라고도할수있는GMAIL을연동하는것은가장많이사용하는Webhook 중하나가될것이며본포스팅이그런부분에많은도움이되었으면하는바램이다 본포스팅에쓰인Method가궁금하다면하기의Google App Script 링크에서자세한내용을참고Link |
2022-08-19 15:46:48 |
海外TECH |
DEV Community |
Design: CQRS - Desfazendo mal-entendidos |
https://dev.to/wsantosdev/design-cqrs-desfazendo-mal-entendidos-5bpo
|
Design CQRS Desfazendo mal entendidosOlá Este émais um post da seção Design e desta vez trago o conteúdo em um formato diferente Não pretendo explicar detalhadamente o pattern arquitetural CQRS mas sim esclarecer alguns pontos sobre ele que são comumente confundidos e mal difundidos pela comunidade NET Vou começar com duas provocações CQRS não tem a ver com MediatR CQRS sem um domínio complexo não éCQRS Perdido Jáesclareço Vamos lá O objetivo do patternQuando Greg Young propôs o pattern em o problema que ele visava resolver era a impossibilidade de conciliar um modelo de domínio rico mais especificamente um Agregado do DDD com um padrão arquitetural baseado em dados que suporta apenas verbos Create Read Update e Delete o famoso CRUD Quando utilizamos DDD nossa principal preocupação éter claro o jargão do domínio aquilo que vai chamar de Linguagem Ubíqua ou Onipresente Ou seja se um dado modelo de domínio possui um verbo que se traduziráem um método chamado por exemplo Cancelar simplesmente não haveráum método correspondente para este verbo em uma arquitetura baseada em CRUD repare que no caso de uma compra por exemplo Cancelar não éo mesmo que Deletar Excluir Além disso existem duas questões quanto àinterface com o usuário interfaces do tipo CRUD se preocupam exclusivamente com o estado do DTO que a alimenta enquanto em DDD estamos mais preocupados com o comportamento do modelo de domínio Isso demanda um estilo de desenvolvimento de interface conhecido como Interface baseada em tarefas Ou seja a ação a ser executada émais importante que o estado do modelo e nem sempre essa interface demanda todos os dados constantes do modelo de domínio o que acaba gerando a necessidade de criar mapeamentos entre seu modelo de domínio e o DTO enviado ao usuário o que além de dar mais trabalho acopla seu domínio àsua camada de aplicação seu controller caso de uso ou qualquer que seja sua representação Com isso em mente Greg Young resolveu pensar numa forma de criar um pattern arquitetural que desse conta dos problemas apresentados A origem do patternGreg Young se baseou em uma ideia proposta por Bertrand Meyer que basicamente dizia o seguinte Uma operação que altera o estado de um objeto não deve retornar valor E uma operação que retorne um valor não deve alterar o estado de um objeto Esta proposta ficou conhecida como CQS que significa em portuês Segregação entre Consulta e Comando Ao contrário da ideia do CQS no entanto que eventualmente precisa ser violada como no método pop de um array que altera seu estado removendo um elemento mas também o retorna o CQRS se pretende manter puro Ou seja um comando não deve retornar um valor embora possa retornar um resulado e uma consulta não deve executar um comando O aspecto mais importante no entanto não éa mera separação entre comandos e consultas mas sim a separação entre modelo de domínio e modelo de apresentação DTO E éneste ponto que começo a responder às provocações acima CQRS não tem nada a ver com MediatRMuita gente acredita por repetir informações incorretas ou de fontes questionáveis que basta fazer uma implementação com MediatR criando CommandHandlers e QueryHandlers e pronto temos CQRS Pois bem Esta crença está completamente incorreta Lembre se do que foi dito acima mais importante que separar comandos de consultas éseparar o modelo de domínio do modelo de apresentação Portanto se vocêapenas faz uma implementação com MediatR mas segue utilizando DTOs que representam o estado do seu modelo de domínio que geralmente vai refletir seu modelo de persistência vocêestará apenas adicionando código desnecessário e potencialmente criando redundâncias como por exemplo repetir em sua camada de persisência a estrutura do DTO utilizado pela camada de aplicação Vocêpoderádizer que estáutilizando o Mediator Pattern mas não que estáimplementando CQRS Nota não tenho a pretensão de me colocar como uma fonte confiável Estou apenas reproduzindo o conteúdo do próprio autor do pattern e inclusive estou sujeito a erros de interpretação Portanto eventuais críticas que me realinhem a este conteúdo serão muito bem vindas Além disso háum segundo detalhe MediatR sequer énecessário àimplementação de CQRS Não há necessariamente problema algum em sua camada de aplicação por exemplo um Controller em sua Web API ter conhecimento sobre o CommandHandler ou QueryHandler isso sem dizer que haveráum overhead no uso do MediatR uma vez que o mesmo exige a criação de uma nova instância do mediador a cada ativação Nota Éclaro que se vocêentender que este trade off entre desempenho e desacoplamento tem uma relação positiva não hárazão para não usar inclusive tenho um tutorial sobre o MediatR publicado no blog Inclusive faça um teste Crie uma Web API com e uma sem MediatR e faça um teste de performance Éum exercício bem divertido Aívocêpoderia me perguntar mas neste caso vou injetar um monte de handlers no meu Controller E a resposta é definitavamente não Pessoalmente não recomendo o uso de um mesmo Controller para executar mais de uma operação neste caso assumindo que seu Controller seja o equivalente ao seu Caso de Uso A alternativa éorganizar seus Controllers não a partir do modelo de domínio que ele afeta por ex OrderController mas sim a partir das ações do usuário lembra da ideia de interface baseada em tarefas Éaqui que ela faz sentido na camada de aplicação Ou seja seguindo o exemplo acima teríamos um PlaceOrderController que teria injetado um PlaceOrderCommandHandler ou uma instância de IMediatR e faria o restante do trabalho CQRS sem um domínio complexo não éCQRSAcredito que a esta altura este ponto esteja claro Mas quero adicionar alguns comentários Existem algumas estratégias possíveis para separar seu modelo de domínio do modelo de apresentação então vou citá las para conhecimento Eventos e ProjeçõesEsta éa primeira forma recomendada pelo Greg Young Quando um comando éexecutado e o estado do modelo de domínio éalterado um evento de domínio élançado e a partir dele o modelo de apresentação éatualizado Neste cenário existiram duas áreas de persistência uma para o modelo de domínio e outra para o modelo de apresentação Note que neste caso a consistência será necessariamente eventual jáque haveráalgum tempo decorrido entre o lançamento do evento sua captura processamento e atualização do modelo de apresentação Nota uma questão muito importante nesta situação éa garantia de ordem no processamento dos eventos Caso os eventos sejam processados fora de ordem o estado tanto de seu modelo de domínio quanto de seu modelo de apresentação serão corrompidos Este éum ponto de atenção ao se optar por este modelo de atualização Eventos como PersistênciaEsta éa segunda forma recomendada pelo Greg Young Da mesma forma que acima um evento de domínio élançado após a execução de um comando mas em vez de atualizar o estado do modelo de domínio o próprio evento seria armazeado e o estado do modelo seria um reflexo do processamento desses eventos em ordem de ocorrência e aítemos um outro pattern chamado Event Sourcing ConclusãoComo pudemos ver acima CQRS émuito mais que apenas separar algumas porções de código e incluir o MediatR como uma espécie de service locator Se vocênão possui um domínio complexo que demande essa diferenciação entre modelos de domínio e modelos de apresentação éinteressante abrir mão desta abordagem para manter seu código simples Do contrário vale muito a pena considerar o uso de CQRS junto com Event Sourcing uma vez que estes patterns são complementares Gostou Me deixe saber pelos indicadores Tem dúvidas críticas ou sugestões Deixe um comentário ou me procure nas redes sociais Atéa próxima |
2022-08-19 15:05:00 |
海外TECH |
DEV Community |
Turning it up to 11! |
https://dev.to/avalonia/turning-it-up-to-11-34jn
|
Turning it up to For the last years the team has been working hard to bring the next generation of Avalonia This has focused on platforms features and performance We are pleased to announce the release of Preview today It is available immediately on NuGet So what s new PlatformsWe have made huge strides forward to bring Avalonia to Android iOS and Embedded platforms Until now Avalonia had been dominant on the desktop However many users wish to reuse their UI code on mobile and in the browser In this preview we have almost production ready solutions for iOS Android and browser We have also had a huge push on support for embedded platforms like Raspberry Pi Torizen and more Avalonia is light weight and able to run without a desktop environment Avalonia is now highly optimized for low power embedded platforms It is able to boot extremely quickly and maintain high framerates See this video from one of our customers that are using Avalonia in embedded industrial products New Features New Visual Layer Composition Renderer Extremely efficient renderer with no memory pressure allowing high frame rates even on low power embedded devices You can achieve fps without breaking a sweat New rendering capabilities are also enabled We shall go into this more in a future post Full Featured Text Rendering and LayoutText rendering and layout is harder than most realize Our team has been working on this for several years now Avalonia now has full unicode support and is able to layout and render text from any language including right to left We also now have full featured support for rich text and inlines We have the full TextFormatter API from WPF implemented which allows controls and applications that rely on rich text formatting to be ported from WPF This is a huge advance and proves that Avalonia is ready for the world your application can now be used by people in any culture and language Avalonia now supports IME input method editor on all platforms this means that languages i e CJK Chinese Japanese Korean etc work as expected AccessibilityAccessibility is extremely important to us We need to ensure that anyone can use the applications built on Avalonia We now have full support for accessibility on Window and MacOS You do not have to make any changes to your application to enable this it will simply just work We have properties to customize accessibility names of components In future this support will be available also on Linux Mobile and Browser Accessibility also enables new testing scenarios which leads us to… Automated TestingAutomation or Automated testing is now possible You can simply use Appium or other automated testing frameworks for desktop This means you can have a test that runs your application interacts with it and checks for the correct behavior This is traditionally how many applications are tested It is worth noting that Avalonia is a fully mockable platform This means that you can actually test the same functionality inside unit tests with mocked controls and views We have had reports from customers stating that “migrating our tests from automated tests to mocked unit tests allowed us to run thousands of tests in just seconds instead of several hours Having both mocked and automated tests gives developers the best opportunity to ensure the stability of their applications in production Control ThemesWe have overhauled our styling system and added a new feature called Control Themes This means that all the styles required for a control can be grouped together and that you can apply different themes to specific parts of your application It also allows you to instantly switch between for example light and dark mode which in the previous version could take a bit of time to process Control themes are also allowed to inherit styles Similar to WPFs “based on styling mechanism PerformanceThere has been a huge focus on performance Just upgrading to will give your application a boost Themes Styles and Resources are lazily loaded on demand This means that your application will load much faster without having to wait for everything to be pre loaded Our XAML compiler has been optimized to produce less MSIL code This means that there is less code to JIT That also means your assemblies will be smaller saving memory and reducing the footprint Applications also load faster We have also optimised our styling system and renderer Even on low powered devices it s now possible to load very quickly and render at very high frame rates These performance gains are particularly noticeable on low powered and embedded devices Why should you use Avalonia Avalonia is quickly becoming the choice of many big companies who need a UI platform they can depend on Over the last years Avalonia has successfully maintained its x api and proven it can provide a stable api that is enforced with api analysis and automated testing When is released you will be able to rely on the api and know that it will remain stable and supported for years to come There are now a huge number of real applications in production Avalonia is supported by a company AvaloniaUI OU We have been providing porting services and commercial support to our customers for over years If you need support and guarantees please contact team avaloniaui net for more information Find us on Telegram Twitter Github www |
2022-08-19 15:01:51 |
Apple |
AppleInsider - Frontpage News |
Apple continuing full-court press against retail unionization efforts |
https://appleinsider.com/articles/22/08/19/apple-continuing-full-court-press-against-retail-unionization-efforts?utm_medium=rss
|
Apple continuing full court press against retail unionization effortsApple has been addressing unionization drives by discussing a host of anti union talking points at several more of its Apple Store locations in Maryland and Virginia Apple Towson Town CenterOne employee who said they work at Apple Townsend ーlikely meaning Apple Towson Town Center in Maryland ーsaid that company representatives recently gave anti union talking points including the fact that a union could slow down schedule changes and that recent pay raises were not the result of unionization efforts Read more |
2022-08-19 15:48:34 |
海外TECH |
Engadget |
Kia officially unveils its 576-HP EV6 GT at Monterey Car Week |
https://www.engadget.com/kia-goes-full-beast-mode-with-the-new-576-hp-ev6-gt-155033633.html?src=rss
|
Kia officially unveils its HP EV GT at Monterey Car WeekIt was good times for the Ford Mach E GT atop the e muscle car heap Those halcyon days of performance dominance will soon be coming to an end when Hyundai unleashes its EV GT performance crossover on North America With horses under the hood and a of seconds not even a Huracan Evo can beat it off the line Hyundai Motor GroupThe new EV GT is not to be confused with the existing EV GT Line though it s easy to do From the outside they re largely similar ーsave for the neon accents and inch rims ーbut like story morals puff pastries and spider egg sacs it s what s on the inside that really matters Where the GT Line AWD offered a not insignificant HP lb ft torque from its kW front and kW rear electric motors the GT AWD goes two steps further slamming a kW motor onto the front axle and a massive kW motor on the rear to output HP and lb ft of torque nbsp It does a in seconds with a top speed of MPH ーthat s a tenth of a second faster than the Mach E GT Performance edition with more horsepower to use That said the Mustang does offer more torque lb ft to the EV s and a much longer driving range miles on a full Mach E charge vs just miles for the EV GT Hyundai Motor GroupLike the rest of the EV lineup the GT will benefit from Hyundai Group s V electrical architecture enabling rapid charging to the tune of percent battery capacity in minutes at kW Exclusive to the GT however are three new drive modes GT Drive My Drive and squeeeee Drift Mode nbsp GT Drive “optimizes the performance of the EV GT s motors braking steering suspension e LSD and Electronic Stability Control ESC systems into their most dynamic settings per a Friday release “Drivers can also create custom tailored settings to suit individual driving preferences using My Drive Mode The real fun begins with Drift Mode which pushes a majority of the power to the rear wheels for a fully electrified hooning experience Hyundai Motor GroupThere s no word on pricing yet but it s pretty safe to assume that it ll be north of the GT Line AWD s MSRP maybe even more than the Mach E GT We ll find out when the EV goes on sale in Q |
2022-08-19 15:50:33 |
海外TECH |
Engadget |
Paramount+ will stream the UEFA Champions League until 2030 |
https://www.engadget.com/paramount-plus-uefa-champions-league-streaming-rights-soccer-152206370.html?src=rss
|
Paramount will stream the UEFA Champions League until Paramount will be the home of UEFA Champions League soccer for the rest of the decade Paramount Global formerly ViacomCBS has secured a six year extension to stream the glitzy annual soccer tournament until the end of the season The deal includes the English language rights to the Europa League and Europa Conference League the second and third tiers of international European club soccer competition The agreement is valued at over billion meaning that Paramount Global will pay around million per year That s a steep increase from the million per year the company is currently paying according to Bloomberg which first reported the news Several media companies are said to have been interested in the Champions League rights with Paramount believed to have pipped Amazon The deal marks an extension of the current agreement Paramount has with UEFA which will expire in Although some Champions League games air on Paramount owned networks like CBS and CBS Sports Network Paramount streams all of them The service will continue to do so for another eight years The latest pact runs through the World Cup which will take place in the US Canada and Mexico and is expected to make the sport even more popular in North America Paramount which also has the rights to broadcast Serie A some CONCACAF international games the National Women s Soccer League and the Women s Super League aired the Champions League final on CBS and drew record ratings It was also the most streamed soccer match ever on Paramount “UEFA has been a key driver for Paramount since our launch and we are thrilled to extend this successful partnership showcasing even more world class soccer through the season building on the incredible momentum we have created the past two years CBS Sports Chairman Sean McManus said in a statement |
2022-08-19 15:22:06 |
海外TECH |
Engadget |
Discovery+ is the new home for CNN originals following CNN+ shutdown |
https://www.engadget.com/discovery-plus-cnn-originals-hub-150546550.html?src=rss
|
Discovery is the new home for CNN originals following CNN shutdownThe short life of CNN left its parent network without an official home for original shows but the broadcaster now appears to have a makeshift solution Discovery has launched a CNN Originals hub that offers more than episodes of library material including Anthony Bourdain Parts Unknown HLN s Vengeance lineup and movies like Race for the Vaccine Some originals will come to the service after their runs on cable Warner Bros Discovery WBD said The hub is available through the Discovery website and apps for all supported platforms More show announcements are due in the quot months to come quot WBD said Discovery won t be a go to source for all of CNN s on demand material The CNN show Who s Talking to Chris Wallace is coming to HBO Max this fall for instance However this does make Discovery a more compelling subscription if its existing batch of reality shows and documentaries wasn t enough This situation won t last for long WBD plans to merge HBO Max and Discovery in summer so you ll likely have access to a unified CNN catalog within a year Whether or not it includes everything you re looking for is another matter HBO Max is pulling some shows including some with unreleased seasons as part of WBD s broader cost cutting efforts and it s not clear if CNN productions are exempt from this strategy |
2022-08-19 15:05:46 |
海外科学 |
BBC News - Science & Environment |
Hosepipe ban starts as drought declared in south-west Wales |
https://www.bbc.co.uk/news/uk-wales-62592174?at_medium=RSS&at_campaign=KARANGA
|
causes |
2022-08-19 15:17:45 |
金融 |
RSS FILE - 日本証券業協会 |
新型コロナウイルス感染症への証券関係機関等・各証券会社の対応について(リンク集) |
https://www.jsda.or.jp/shinchaku/coronavirus/link.html
|
新型コロナウイルス |
2022-08-19 15:30:00 |
ニュース |
BBC News - Home |
Sir Alex Ferguson: Ryan Giggs has fantastic temperament |
https://www.bbc.co.uk/news/uk-wales-62608951?at_medium=RSS&at_campaign=KARANGA
|
player |
2022-08-19 15:35:05 |
ニュース |
BBC News - Home |
Cineworld shares plunge on bankruptcy fears |
https://www.bbc.co.uk/news/business-62607998?at_medium=RSS&at_campaign=KARANGA
|
audiences |
2022-08-19 15:25:43 |
ニュース |
BBC News - Home |
Sarah Everard: Wayne Couzens charged with indecent exposure |
https://www.bbc.co.uk/news/uk-england-london-62610341?at_medium=RSS&at_campaign=KARANGA
|
couzens |
2022-08-19 15:19:05 |
ニュース |
BBC News - Home |
Reading and Leeds festivals: Fans receive refunds after uproar |
https://www.bbc.co.uk/news/newsbeat-62605599?at_medium=RSS&at_campaign=KARANGA
|
leeds |
2022-08-19 15:03:54 |
ニュース |
BBC News - Home |
Josephine Tewson: Keeping Up Appearances actress dies at 91 |
https://www.bbc.co.uk/news/entertainment-arts-62605184?at_medium=RSS&at_campaign=KARANGA
|
sitcom |
2022-08-19 15:16:08 |
ニュース |
BBC News - Home |
Ukraine's Crimean fightback having 'psychological impact' on Russia |
https://www.bbc.co.uk/news/world-europe-62608526?at_medium=RSS&at_campaign=KARANGA
|
ukrainian |
2022-08-19 15:41:09 |
ニュース |
BBC News - Home |
England v South Africa: Hosts lose by innings on third day at Lord's |
https://www.bbc.co.uk/sport/cricket/62607450?at_medium=RSS&at_campaign=KARANGA
|
africa |
2022-08-19 15:38:37 |
ニュース |
BBC News - Home |
Oleksandr Usyk v Anthony Joshua II: British challenger heavier than champion in Saudi Arabia |
https://www.bbc.co.uk/sport/boxing/62602133?at_medium=RSS&at_campaign=KARANGA
|
Oleksandr Usyk v Anthony Joshua II British challenger heavier than champion in Saudi ArabiaBritish challenger Anthony Joshua weighs in lbs heavier than Oleksandr Usyk for their heavyweight rematch on Saturday night in Saudi Arabia |
2022-08-19 15:08:38 |
ニュース |
BBC News - Home |
England v South Africa: Highlights from day three of the first Test |
https://www.bbc.co.uk/sport/av/cricket/62607787?at_medium=RSS&at_campaign=KARANGA
|
africa |
2022-08-19 15:45:44 |
北海道 |
北海道新聞 |
不育症 血液製剤が有効 妊娠初期に大量投与で出産率上昇 札幌の医師ら研究 |
https://www.hokkaido-np.co.jp/article/719849/
|
血液製剤 |
2022-08-20 00:21:00 |
北海道 |
北海道新聞 |
公明、宗教団体批判に懸念 石井氏「政党支援は保障」 |
https://www.hokkaido-np.co.jp/article/719848/
|
宗教団体 |
2022-08-20 00:16:00 |
北海道 |
北海道新聞 |
胆振管内463人感染 新型コロナ |
https://www.hokkaido-np.co.jp/article/719778/
|
新型コロナウイルス |
2022-08-20 00:14:52 |
コメント
コメントを投稿